Abstract:
A method and system are described for inserting a watermark, including receiving encoded content, receiving a watermark unit and replacing directly a unencrypted and untransformed portion of the encoded content with an alternative value, wherein the alternative value has embedded therein watermark signals. Also described are a method and system for watermark detection, including receiving a watermark unit, receiving digital media content, wherein a portion of the digital media content was watermarked, retrieving a plurality of coefficient values from the watermarked content and retrieving bit values of the watermark from the coefficient values.

Description:
FIELD OF THE INVENTION  
       [0001]     The invention relates to the field of digital content security and in particular, to content scrambling and digital watermarking.  
       BACKGROUND OF THE INVENTION  
       [0002]     Encoded content requires a “decoding” process in order to use the content. Some examples of encoded content include MPEG-1 MPEG-2 H.264/AVC, WMA, MPEG4, JPEG2000, MP3, PDF, Windows Word, Postscript, etc., and their encrypted versions.  
         [0003]     The prior art methods for watermarking encoded content comply with the media transform with many restrictions such as no watermarking in some I-frames or no watermark in the first ten seconds of the digital media. The prior art methods also do not apply media transforms and watermarking to every I-frame in order to support “trick play” such as fast forwarding. Media transform is a process to replace sets of bits in the encoded content with other sets of bits. In some cases, the second set of bits represents a better quality of the content than the first set of bits. As a result, the media transform process improves the quality of the content. Furthermore, in some cases the second set of bits may contain additional digital watermark signals and, thus, such process may introduce digital watermarks.  
         [0004]     If no media transform occurs in some part of an encoded content, for example, in one out of every four frames of video I-frame data, it unduly restricts the space for watermarking resulting in embedding less watermark payload and increasing synchronization costs during watermark detection. Furthermore, such restriction may cause significant portions of the content to be unwatermarked/unprotected. It is clear that there needs to be a method for protecting digital content while preserving specialty playback device operations, such as “trick play”.  
       SUMMARY OF THE INVENTION  
       [0005]     The present invention watermarks encoded content by embedding watermarks in selected locations in the encoded content without restrictions on the locations that are available for watermarking and without leaving meaningful portions of content unwatermarked. This is accomplished by replacing original values in the encoded content by their alternative values. Each original value may have one or more alternative values and each alternative value contains a watermark signal. Moreover, watermarks can be removed by replacing the alternative values with the original value, or be replaced by substituting one alternative value with another alternative value.  
         [0006]     Each alternative value contains watermark signals. By selecting one of the alternative values to substitute for the original value in the corresponding locations in the encoded content, these watermark signals, either together with other watermark signals at other positions within the encoded content or by themselves, can have one or more units of information embedded. A unit of information consists of one or more bits. By not restricting the I-frames that can be watermarked, there can be more units of information (forensic marking payloads) that can be embedded in the encoded content. Watermark detection is easier because there is no need to identify the skipped I-frames and synchronize the frames in the baseband (uncompressed) or encoded video in the watermark detection process. Moreover, the task of watermark embedding is easier during the content authoring process. The playback devices, including specialty playback operations, are also easier to implement.  
         [0007]     A localized encryption allows for a correspondence between the clear text and cipher text. One category of encryption, which makes localized encryption possible, is selective encryption or partial encryption. Instead of treating content (audio or video) as binary data streams (also called “native encryption”), selective encryption methods “understand” the content syntax structure (e.g. MPEG-2 structure) and only selectively encrypt some parts of the content. Selective encryption may occur after compression. Encrypted content must not have commercial value in terms of quality if part of the encrypted content is viewable.  
         [0008]     Taking MPEG-2 content as an example, a simple selective algorithm encrypts only the I-frames. The selectively encrypted MPEG may be a valid MPEG stream. Although P and B frames in MPEG-2 are not valuable without knowledge of the corresponding I-frames, large portions of MPEG video are still visible (viewable) because of inter-frame correlation and mainly from unencrypted I-blocks in the P and B frames.  
         [0009]     A method and system are described for inserting a watermark, including receiving encoded content, receiving a watermark unit and replacing directly a unencrypted and untransformed portion of the encoded content with an alternative value, wherein the alternative value has embedded therein watermark signals. Also described are a method and system for inserting a watermark, including receiving encoded content, receiving a watermark unit, receiving a sequence of bits, wherein the sequence of bits includes watermark payload information and performing one of replacing directly an unencrypted and untransformed portion of the encoded content with an alternative value, and leaving unchanged said portion of said encoded content, based on bit values of the sequence of bits of the watermark payload information and wherein the alternative value has embedded therein watermark signals. Further described are a method and system for watermark detection, including receiving a watermark unit, receiving digital media content, wherein a portion of the digital media content was watermarked, retrieving a plurality of coefficient values from said watermarked content and retrieving bit values of the watermark from the coefficient values. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0010]     The present invention is best understood from the following detailed description when read in conjunction with the accompanying drawings. The drawings include the following figures briefly described below:  
         [0011]      FIG. 1  is a block diagram showing the workflow for the pre-processing for watermark embedding in accordance with the principles of the present invention.  
         [0012]      FIG. 2  depicts a watermark unit (U) of the present invention.  
         [0013]      FIG. 3  depicts digital video content showing the I-frames in accordance with the principles of the present invention.  
         [0014]      FIG. 4  is a block diagram of a playback device, which receives encoded content having watermark units embedded therein. 
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0015]     Watermarking encoded content can be divided into three separate steps: 
        Location selection, which is the selection of the position where the value in the encoded content can be replaced by alternative values containing watermark signals.     Calculation of alternative values, which is the determination of the alternative values so that the alternative values have the same number of bits as the value the alternative values are to replace in the encoded content and such substitution will not cause perceptual changes to the content. Moreover, these alternative values contain watermark signals.     Watermark embedding/insertion, which is the actual replacement of the value in the encoded content by one of the alternative values.        
 
         [0019]     Forensic watermarking can be pre-processed during content authoring to generate alternative values containing watermarking signals. These alternative values will be later used to replace clearly defined parts of the encoded content to embed watermark information. Specifically, the present invention is directed to a method which applies watermarks to each I-frame of a unit of digital media content including optionally the first ten seconds of the digital media content.  
         [0020]     As a result of the pre-processing, a set of watermark units (WUs) are produced. WUs contain all information for actually embedding/inserting a watermark. The watermark pre-processor takes encoded content as the input and a watermark key, and outputs a sequence of watermark units. In the case where only one alternative value is generated for each WU, a watermark payload may become an additional input to the pre-processor. These watermark units are integrated into the final content as meta data of the encoded content, as a separate channel multiplexed with the content, as steganographic data hidden in the syntax elements or in the content, or as a separate file stored in the physical media (optical disc, tape, hard drive, etc.) or transmitted over a network (TCP/IP, satellite, etc.). The watermark payload information is embedded by selecting from among the alternative values in WUs. A WU has at least one alternative value.  
         [0021]     The watermark payload is typically received in the third step “Watermark Insertion”. It can be stored in or calculated by a component external to the watermarking system. The watermark payload information is typically an identifier uniquely identifying the recipient, playback device (manufacturer, model and/or serial number), or date and time of the playback of the content. The difference between the original value, V, and its alternative values may be stored in WUs to potentially reduce the size of WUs. WUs can be further compressed.  
         [0022]     It is important that the WUs are protected against unauthorized access or modification, because with this information not only the watermarking system is vulnerable to various attacks but also it is easy for a hacker to insert fake watermarks, or alter or remove existing watermarks. If the WUs are stored and transmitted as steganographic (watermarking) data, the access can be controlled by a watermarking key.  
         [0023]     As indicated earlier, the first and second steps can be performed by a pre-processor. Thus, prior to the third step the encoded content is not watermarked. The third step performs the watermark embedding by replacing some values in the encoded content with the alternative values specified in WUs. The WUs specify where the watermark signals (in alternative values) are embedded and what the possible watermark signals can be in these positions by selecting the appropriate alternative values.  
         [0024]     Specifically, the present invention is directed to a method for insertion of watermarks in every I-frame of a unit of digital media content including optionally the first ten seconds of the unit of digital media content. This entails neither applying media transform nor scrambling to every fourth I-frame data in MPEG-2 encoded content. This means that every fourth I-frame must have valid and correct audio and video data. That is, there may be no format corruption and no perceptual artifacts are permitted. In one embodiment the first ten seconds of a unit of digital media content are not used for watermarking and in an alternative embodiment the first ten seconds of the unit of digital media content are also watermarked.  
         [0025]      FIG. 1  is a block diagram showing the workflow for pre-processing of encoded content to generate WUs.  FIG. 2  depicts a watermark unit in accordance with the principles of the present invention. Each WU is described by a vector (P, L, C, {V}, V 1 , V 2 , . . . Vn) where P is the position of the original value V that may be replaced in the future by an alternative value in the encoded content, L is the number of bits occupied by the original value V in the encoded content starting at P, C is a set of global positions of the coefficients (for example, the DCT or wavelet quantized coefficients) that are encoded in the L bits (in encoded content) with an entropy coding method. Entropy coding such as a Huffman coding is typically applied to the last stage of encoding to produce the encoded content. V 1 , V 2 , . . . Vn are valid alternative values of V and each of such values contain a watermark signal. Each coefficient position is represented by c(ch,f,b,co) where ch is the channel index, f is the frame index, b is the block index, and co is the coefficient index within the block for a unit of video content. An alternative value is valid, if, when this value replaces the current value it maintains format compliance and there are no perceptual effects on the content. Moreover, V 1 , V 2 , . . . Vn occupy L bits as V does in the encoded content. {V} indicates that the original value is optional in the embedding/insertion process. The original value may be required in the watermark removal processes.  
         [0026]     An original value V may contain one or more coefficients in encoded form. When the WUs are generated, if the input is encoded content such as MPEG-2 or MPEG-4, the entropy coding, i.e. Variable Length Coding (VLC), first needs to be “undone” to access to coefficients, and then find the appropriate position and alternative values and store the original coefficient and these alternative values. An alternative value Vi may correspond to the same coefficients as V does, but in some cases Vi may correspond to more or less coefficients than V does.  
         [0027]     Encoded content is pre-processed and alternative values containing watermark signals are generated. These alternative values will be later used to replace clearly defined parts of the encoded content. Although the existing watermarking systems can be applied to pre-processing (i.e. Step  1  and  2 ) and actual insertion (Step  3 ), new watermarking algorithms can be developed specially for this scheme.  
         [0028]     During content authoring, encoded content can also be partially encrypted or transformed. Partially encrypted or transformed content (“transformed content”) may be format corrupt or format compliant. If the transformed content is format corrupt, then the format of the transformed content is corrupt and it cannot be decoded and played without a reverse transformation, or it can be decoded and played with serious content quality degradation. If the transformed content is format compliant, then the transformed content retains its format but its quality is degraded without a corresponding reverse transformation.  
         [0029]     After content is encoded, if it was further transformed or encrypted, some parts of the encoded content are usually required to remain in “clean” format (i.e. untransformed or unencrypted) in order to support special playback modes such as “trick play” mode (e.g. fast-forwarding, rewinding, . . . ) because the playback devices may not have sufficient resources to perform the reverse transformations and decryption.  
         [0030]     The present invention allows a playback device to skip the reverse transformation operations on certain portions (“clean” portions that are not partially encrypted nor transformed) of encoded content but still perform the forensic marking by replacing the values of those portions that are skipped with alternative values defined in the watermark pre-processing stage. In such a case, the forensic marking can be applied before or after reverse transformations or decryption.  
         [0031]     In order to do so, the portions of the encoded content that are used for special playback modes should be “playable” without transformation, i.e. they are either not encrypted, or not transformed with corrupted format.  
         [0032]     MPEG-2 video is one example of encoded content. Trick play mode such as fast-speed forwarding or rewinding is usually supported by decoding and playing one I-frame in every N I-frames in a playback device. If the I-frames that are used for such trick plays require a reverse transformation or decryption, a playback device may not have enough sources (CPU, memory, etc.) to perform the required operations.  
         [0033]     In an exemplary embodiment of the present invention, as a result of the limited resources of the playback devices, these I-frames are not transformed or encrypted in the content authoring but they are pre-processed for forensic marking.  
         [0034]     In another embodiment, these I-frames are transformed during the content authoring in such a way that the transforms do not corrupt the MPEG-2 format (i.e. these transformed I-frame are valid) but cause the degradation of quality or cause special visual effects such as displaying additional texts, logos or other visual information. In this case, the playback devices are required to perform as much of the reverse transformation operation as possible depending on device&#39;s resources and/or the speed of trick plays. Thus, for a low-speed trick plays such as 2×, 4×, 8× fast-forwarding and rewinding, the devices may have sufficient resources to perform the reverse transformation. For a high-speed trick plays, no reverse transformations will be performed. As a result, for a low-speed trick plays, the original non-degraded video quality will be delivered. For a high-speed trick plays, the degraded quality will be delivered without any reverse transformations. In both low- and high-speed trick plays, the forensic marking is always applied to these I-frames.  
         [0035]      FIG. 3  depicts digital video content showing the I-frames in accordance with the principles of the present invention. In the first I-frame (indicated by horizontal lines) the data specified is not transformed but is watermark pre-processed. This I-frame is used for specialty operations such as “trick-play” modes. The next two I-frames (indicated by generally horizontal wavy lines) may be transformed and are watermark pre-processed. That is, every fourth I-frame is not transformed but all I-frames of a unit of digital media content except the first ten seconds in one embodiment and all I-frames including the first ten seconds of digital media content in an alternative embodiment are watermark pre-processed.  
         [0036]     A watermark can be removed if WUs are known, by simply restoring the content to the original value V in each WU. To overwrite an existing watermark in the encoded content, one can simply select an appropriate value from V 1 , V 2 , . . . Vn in each WU according to the payload information to replace the value containing the existing watermark in the encoded content. A removable watermark is useful in some applications for supporting multi-generation watermarks. An example of multi-generation watermarks is to embed a forensic mark in each step of content post-production. To avoid accumulation of perceptual degradation potentially introduced by multiple watermarks, one may wish remove some or all previous watermarks before a new watermark is embedded.  FIG. 4  shows an example of the watermark inserter in a playback device. The watermark inserter embeds a watermark by replacing some values in the encoded content received by the devices with the alternative values specified in WUs. A replaceable watermark can also be useful for switching the states of copy protection for copyrighted content. For example, for a unit of content with a watermark information indicating “copy once”, after one copy is made one may wish to change the watermark information from “copy once” to “no copy”. There are several approaches to avoid any potential conflict of multiple watermarks (i.e. interfere between multiple watermarks). One approach is to use a unique subband for each generation of watermarks. Another approach is to select WUs with the positions that are different from the previous watermarks.  
         [0037]     By using every I-frame after the first ten seconds of digital media content in one embodiment and optionally every I-frame including the first ten seconds in an alternative embodiment the watermark inserter/embedder is less costly to design and manufacture. There are more places for watermark insertion making the digital media content more secure against leakage and unauthorized copying/duplication. Further, should there be unauthorized copying the detection process is easier to implement and less costly to design and manufacture since no I-frames are skipped.  
         [0038]     It is to be understood that the present invention may be implemented in various forms of hardware, software, firmware, special purpose processors, or a combination thereof. Preferably, the present invention is implemented as a combination of hardware and software. Moreover, the software is preferably implemented as an application program tangibly embodied on a program storage device. The application program may be uploaded to, and executed by, a machine comprising any suitable architecture. Preferably, the machine is implemented on a computer platform having hardware such as one or more central processing units (CPU), a random access memory (RAM), and input/output (I/O) interface(s). The computer platform also includes an operating system and microinstruction code. The various processes and functions described herein may either be part of the microinstruction code or part of the application program (or a combination thereof), which is executed via the operating system. In addition, various other peripheral devices may be connected to the computer platform such as an additional data storage device and a printing device.  
         [0039]     It is to be further understood that, because some of the constituent system components and method steps depicted in the accompanying figures are preferably implemented in software, the actual connections between the system components (or the process steps) may differ depending upon the manner in which the present invention is programmed. Given the teachings herein, one of ordinary skill in the related art will be able to contemplate these and similar implementations or configurations of the present invention.