|
Description  |
|
|
BACKGROUND OF THE INVENTION
This invention relates to a method for protecting digital data from
unauthorized mass duplication. More specifically, this invention relates
to a method for copy protecting digital video signals recorded on a
storage medium, such as a compact disc.
The recent development of consumer electronics incorporating devices for
the reproduction of digitally-recorded audio and video data has resulted
in the corresponding development of a vast consumer market for
digitally-recorded media. Such digitally-recorded media are available in a
number of different forms, including optical disc, magnetic disc,
magneto-optical disc, magnetic tape, cartridge, and the like. Commonly,
many of these forms of digitally-recorded media are available for sale or
rental. Additionally, consumers may access and retrieve for storage
digital audio and video data from cable systems, computer networks,
satellite transmission systems, and the like.
Generally, prerecorded digital media contain a complete and virtually
error-free duplicate of original data reproduced from an original digital
master recording. As is well known in the art, digital data stored on a
prerecorded digital medium may be reproduced many times without
significantly affecting the quality of the stored data. Hence, a
prerecorded digital medium may itself be utilized as a template from which
many additional copies of digital data may be reproduced and recorded on
other digital media.
The ease with which such reproduction and recording operations may occur
and the high quality of the resulting recordings has facilitated the
development of significant efforts to produce and distribute counterfeit
prerecorded digital media. Although counterfeiting may occur in small
volumes through the use of consumer recording/reproducing devices, a more
significant problem has arisen from the use of mass production recording
devices. In the optical disc industry, optical discs are mass produced
with a formatting device, termed a "formatter", which reproduces digital
data from a master recording and records the reproduced data onto an
"original" disc. A stamping template, "stamper", is made from this
"original" disc. The "stamper" thus created, may then be used to produce
large numbers of optical discs, e.g. ROM discs, bearing the original
digital data. Hereinbelow, the mass produced optical discs will be
referred to as "retail discs."
At present, it is difficult, if not impossible, for an optical disc
producer to determine the authenticity of or legal title to a particular
master version of digital data provided by a third party. For example, a
counterfeiter may bring an illegally obtained master recording, "original"
disc, or "stamper", or even a retail disc, to an optical disc producer for
mass reproduction of the recorded digital data. Unable to verify the
authenticity of or legal title to the digital data supplied by the
counterfeiter, the optical disc producer may unwittingly mass produce
optical discs bearing the counterfeiter's digital data. Such counterfeit
optical discs have the potential to be indistinguishable from retail discs
produced under proper authority from legal master recordings.
OBJECTS AND SUMMARY OF THE INVENTION
An object of the present invention is to provide apparatus for
authenticating a digital recording prior to mass duplication of the
recording.
Another object of the present invention is to provide formatting apparatus
for determining the authenticity of a digital recording prior to mass
duplication of the recording.
Still another object of the present invention is to provide formatting
apparatus for inhibiting the mass duplication of a digital recording
purchased at retail.
Yet another object of the present invention is to imbed security data into
a digital recording to prevent mass duplication of that recording.
In accordance with an aspect of the present invention, a formatting device
for the authentication and mass duplication of an information signal
recorded on a storage medium is provided. The device includes a first
receiving device for receiving the information signal and a second
receiving device for receiving a key signal. A key signal detection
device, analyzes the information signal to detect the key signal in the
information signal. A key insertion device, inserts the key signal into
the information signal to produce a modified information signal. A
recording device records the modified information signal if the key signal
is not detected in the information signal and inhibits the recording of
the modified information signal if the key signal is detected in the
information signal.
According to another aspect of the present invention, a method for the
authentication and mass duplication of an information signal recorded on a
storage medium is provided. The method includes the steps of: receiving
the information signal; receiving a key signal; analyzing the information
signal to detect the key signal in the information signal; inserting the
key signal into the information signal to produce a modified information
signal; recording the modified information signal if the key signal is not
detected in the information signal; and inhibiting the recording of the
modified information signal if the key signal is detected in the
information signal.
Other objects, features, and advantages according to the present invention
will become apparent from the following detailed description of
illustrated embodiments when read in conjunction with the accompanying
drawings in which the same components are identified by the same reference
numerals.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a procedural diagram of a copy protection methodology according
to an embodiment of the present invention;
FIG. 2A is a data area diagram of a video sequence data area;
FIG. 2B is a data area diagram of a extension-and-user-data area;
FIG. 2C is a data area diagram of a user-data data area;
FIG. 2D is a data area diagram of a group-of-pictures-header data area;
FIG. 3A is a block diagram of an MPEG layer structure;
FIG. 3B is a data area diagram of a slice data area;
FIG. 3C is a data area diagram of a macroblock data area;
FIG. 3D is a data area diagram of a macroblock-modes data area;
FIGS. 4A, 4B and 4C are data area diagrams of macroblock type data areas;
FIG. 5 is a block diagram of an encoder according to certain embodiments of
the present invention;
FIG. 6 is a block diagram of a formatter according to certain embodiments
of the present invention;
FIGS. 7 and 8 are procedural diagrams of a key data insertion point
selection methodology;
FIG. 9 is a diagram of a multibit key data;
FIG. 10 is a block diagram of an encoder according to another embodiment of
the present invention; and
FIG. 11 is a block diagram of a formatter according to another embodiment
of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
FIG. 1 schematically illustrates a copy protection methodology 100
according to the present invention. According to the copy protection
methodology 100, an original source 102 of information is digitally
recorded to produce a legal master tape 104 and a legal master disc 106.
The recording process may occur at a broadcasting station, a sound studio,
a video production facility, or the like.
The original source 102 may include audio signals, video signals, text
data, digital data, and the like, which may be encoded or compressed. For
example, video signals may be processed according to an MPEG standard.
Legal master tape 104 is preferably a magnetic tape and legal master disc
106 is preferably a high-density magneto-optical disc. Of course, tape 104
and disc 106 may each be substituted with any suitable storage medium,
such as a semiconductor memory, a magnetic disc, an optical disc, or the
like.
The legal master tape 104 or the legal master disc 106 is supplied to an
optical disc producer having a formatter 108. Formatter 108 reproduces the
digital data corresponding to the original source information from the
legal master and incorporates key data into the reproduced digital data.
The modified digital data, incorporating key data, is recorded on mass
quantities of optical discs intended for retail sale (retail disc 110).
The key data serves to distinguish the digital data recorded on retail
disc 110 from the digital data recorded on legal master tape 104 or legal
master disc 106.
A consumer may reproduce the digital data stored on retail disc 110 with a
disc player 112. The reproduced digital data may be displayed to the
consumer via a display (not shown) coupled to disc player 112. The
inclusion of key data in the digital data reproduced from retail disc 110
does not significantly affect the reproduction quality of the digital data
corresponding to the original source information. Preferably, the
incorporation of key data into the digital data corresponding to the
source information does not result in flaws in the display of such digital
data which would be perceptible to the consumer.
In the hands of a counterfeiter, digital data stored on retail disc 110 may
be reproduced and recorded on an illegal master, such as illegal master
disk 114 and illegal master tape 116. Illegal master disc 114 may comprise
a high-density magneto-optical disc and illegal master tape 116 may
comprise a magnetic tape. Alternatively, disc 114 and tape 116 may each be
substituted with any suitable storage medium, such as a semiconductor
memory, a magnetic disc, an optical disc, or the like.
The counterfeiter may then present retail disc 110, illegal master disc
114, or illegal master tape 116 to an optical disc producer, having a
formatter 108, for mass duplication of the data stored thereon. Formatter
108 reproduces data from the storage medium supplied by the counterfeiter
and detects key data in the reproduced data. The presence of key data
indicates to the optical disc producer that the storage medium supplied by
the counterfeiter is not an authorized master for the data stored thereon.
Accordingly, the optical disc producer refuses to mass produce for the
counterfeiter optical discs bearing such data. Specifically, formatter 108
may itself inhibit any duplication of data stored on a recording medium
when key data is detected on the recording medium.
Conversely, when formatter 108 reproduces data from a storage medium, such
as legal master tape 104 or legal master disc 106, which does not have key
data stored thereon, formatter 108 does not detect any key data. The
absence of key data indicates to the optical disc producer that the
storage medium is an authorized master for the data stored thereon.
However, the optical disc producer will not know whether the authorized
master has been submitted for duplication by its legal owner (e.g. the
legal master may have been stolen).
An optical disc producer may choose to ignore the presence of key data on a
storage medium supplied by a counterfeiter and proceed to duplicate data
stored upon that storage medium. Such duplication results in the
production of counterfeit discs bearing unauthorized copies of the digital
data.
The present invention is particularly suited for use in conjunction with
video data encoded according to an MPEG standard. FIG. 2A illustrates a
video sequence data area 200 defined in accordance with an MPEG standard.
In a first embodiment of the present invention, key data is stored in a
data area defined for the storage of user data. Video sequence data area
200 includes an extension-and-user-data data area 202. FIG. 2B illustrates
extension-and-user-data data area 202 which includes a user-data data area
204. FIG. 2C illustrates user-data data area 204 which may be utilized to
store key data. In FIG. 2C and in certain subsequent drawings, diagonal
hatching is used to highlight data areas where key data may be stored.
In a second embodiment of the present invention, key data is stored in a
data area defined for the storage of header data. Video sequence data area
200 includes a group-of-pictures-header data area 206. FIG. 2D illustrates
group-of-pictures-header data area 206 which includes a time-code data
area 208. Key data may be stored in time-code data area 208 while
information corresponding to time code data may be stored in another data
area. In an application where a group-of-pictures includes 12 frames of
video data, key data is preferably recorded once in a time-code data area
208 for each group-of-pictures.
In a third embodiment of the present invention, key data is stored in a
data area defined for the storage of quantization data. FIG. 3A
illustrates a layer structure 300 of data storage areas according to an
MPEG standard. Layer structure 300 includes a sequence layer 302, a
group-of-pictures (GOP) layer 304, a picture layer 306, a slice layer 308,
a macroblock (MB) layer 310, and a block layer 312. Sequence layer 302
includes a sequence header data area (SH) and a group of pictures data
area (GOP).
In GOP layer 304, each GOP data area includes an intra-coded frame (I
frame), a number of predictively-encoded pictures (P pictures), and a
number of bidirectionally-predictively-encoded pictures (B pictures). In
picture layer 306, each picture includes a number of slice data areas 314.
In slice layer 308, each slice data area 314 includes a number of
macroblocks.
In macroblock layer 310, each macroblock includes a number of blocks of
pixel data. For example, brightness data may be stored as four blocks of
pixel data and color difference data (Cb, Cr) may be stored as one block
of pixel data. In a preferred quantization operation, each block of pixel
data is transformed according to a discrete cosine transform (DCT) and the
resulting DCT coefficients are quantized. Different levels of quantization
may be achieved, each quantization level corresponding to a particular
quantization step.
Alternatively, in an NTSC-compatible implementation, also shown in FIG. 3A,
a picture layer 306 includes a screen of source input format (SIF) which
includes 240 lines. Each line includes 352 pixels. The pixels are
organized into macroblocks of 16.times.16 pixels.
FIG. 3B illustrates a slice data area 314 which includes a
quantiser-scale-code (SQUANT) data area 316. SQUANT data area 316 is
defined to store a quantization level for each slice data area 314.
However, instead of storing a quantization level, SQUANT data areas 316
may store key data. The quantization level information may be stored on a
block-by-block basis in each macroblock.
FIG. 3C illustrates a macroblock data area 318 which includes a
macroblock-modes data area 320 and a quantiser-scale code (MQUANT) data
area 322. Quantization level information may be stored in each MQUANT data
area 322 and, therefore, different macroblocks within a slice may be
compressed according to different levels of quantization.
FIG. 3D illustrates a macroblock-modes data area 320 which includes a
macroblock-type data area 400. The particular arrangement of
macroblock-type data area 400 depends upon the type of picture of which it
is a part. FIG. 4A illustrates a macroblock-type data area 402 for an I
frame which includes a macroblock-quant data area 408. FIG. 4B illustrates
a macroblock-type data area 404 for a P frame which includes a
macroblock-quant data area 408. FIG. 4C illustrates a macroblock-type data
area 406 for a B frame which includes a macroblock-quant data area 408.
When quantization level information is stored in a particular MQUANT data
area 322, a positive "1" flag is stored in the macroblock-quant data area
408 in the macroblock-type data area 400 (e.g. area 402, area 404, or area
406) of the corresponding macroblock-modes data area 320. The positive "1"
flag indicates that quantization level information has been stored in the
corresponding MQUANT data area 322.
To replace the storage of quantization level information in a SQUANT data
area 316, the MQUANT data area 322 of one or more macroblock data areas
318 in the corresponding slice can be utilized to store such quantization
level information for the entire slice or for a number of constituent
macroblocks.
The above-described first, second, and third embodiments of the present
invention may be rendered ineffective by a counterfeiter who deletes,
overwrites, or otherwise modifies the stored key data. Alteration of the
stored key data may not be detectable as it may not adversely affect
reproduction and display of the associated digital data, e.g. original
source information.
FIG. 5 illustrates an encoder 500 for recording original source information
102 to produce a master recording, such as legal master disc 106, which is
compatible with the key data encoding methods of the three embodiments
described hereinabove. Encoder 500 includes a frame memory 502, addition
circuits 504 and 518, a DCT circuit 506, a quantization circuit 508, a
variable length coding (VLC) circuit 510, a motion vector detection
circuit 512, a prediction memory 514, a motion compensation circuit 516, a
dequantization circuit 520, and an inverse discrete cosine transform
(IDCT) circuit 522.
Each of frame memory 502 and prediction memory 514 is a conventional memory
device, such as a semiconductor memory, a magnetic tape, a magnetic disc,
and the like. Addition circuit 504 is a signal combiner for combining
signals by addition, subtraction and the like. Addition circuit 518 is a
signal combiner for combining signals by addition and the like. DCT
circuit 506 is a discrete cosine transform circuit for transforming data
according to a discrete cosine transform method. Quantization circuit 508
is a quantizer for compressing data by a quantization method. Variable
length coding circuit 510 is an encoder for variable length encoding data.
Motion vector detection circuit 512 is a processing circuit for determining
motion vectors in data. Motion compensation circuit 516 is a processing
circuit for motion compensating data. Dequantization circuit 520 is a
dequantizer for dequantizing quantized data. Inverse discrete cosine
transform circuit (IDCT) 522 is transform circuit for processing data
according to an inverse discrete cosine transform method.
Original source information 102, such as a digital video signal, is
supplied to frame memory 502. Memory 502 stores the original source
information 102 and supplies the original source information 102 to
addition circuit 504 and to motion vector detection circuit 512. Addition
circuit 504 combines the original source information with motion
compensation information supplied from prediction memory 514 and supplies
the resulting combination to DCT circuit 506. Preferably, addition circuit
504 subtracts the motion compensation information from the original source
information. Specifically, where the original source information comprises
an I frame, addition circuit 504 passes the I frame directly to DCT
circuit 506. Where the original source information comprises a P frame or
a B frame, addition circuit subtracts motion compensation information
supplied from prediction memory 514 from the frame and supplies the
difference data to DCT circuit 506.
Motion vector detection circuit 512 processes the original source
information 102 to determine motion vector information. Motion vector
information is supplied to motion compensation circuit 516.
DCT circuit 506 transforms the signal supplied by circuit 504 to produce
DCT coefficient data which is supplied to quantization circuit 508.
Preferably, DCT circuit 506 converts each block of data in each macroblock
into DCT coefficients Coeff›u! ›v!. Further details regarding the DCT
processing are provided in conjunction with the discussion of FIG. 7.
Quantization circuit 508 quantizes the DCT coefficient data to produce
quantized data which is supplied to VLC circuit 510 and to dequantization
circuit 520. Preferably, quantization circuit 508 converts DCT
coefficients Coeff›u! ›v! into quantization levels QF›u! ›v!. The
quantization levels QF›u! ›v! are zigzag scanned as explained in
conjunction with FIG. 8.
Dequantization circuit 520 dequantizes the quantized data to produce
unquantized data which is supplied to IDCT circuit 522. IDCT circuit 522
transforms the unquantized data to produce digital data which is supplied
to addition circuit 518. Addition circuit 518 combines the digital data
with motion compensation information supplied from prediction memory 514
to recover original source information and supplies the recovered original
source information to motion compensation circuit 516.
Motion compensation circuit 516 processes the recovered original source
information in accordance with the motion vector information supplied by
motion vector detection circuit 512 to produce motion compensation
information, such as a motion predictive image. The motion compensation
information is stored in prediction memory 514 for supply to addition
circuits 504 and 518.
VLC circuit 510 encodes quantized data supplied by quantization circuit 508
to produce variable-length coded data which are supplied for recording on
a master storage medium, such as a legal master disc or a legal master
tape. In accordance with the first embodiment, VLC circuit 510
incorporates user-data data areas in the variable-length coded data. In
accordance with the second embodiment, VLC 510 incorporates time-code data
areas in the variable-length coded data. In accordance with the third
embodiment, VLC 510 incorporates SQUANT data areas in the variable-length
coded data.
FIG. 6 illustrates a formatter 600 for mass duplication of digital data
reproduced from a master recording produced by encoder 500. Formatter 600
includes a key memory 602, a variable-length-decoder parser 604, a key
insertion circuit 606, a recording apparatus 608, a detection circuit 612,
a control circuit 614, and a display apparatus 616.
Key memory 602 is a conventional memory device, such as a semiconductor
memory, a magnetic tape, a magnetic disc, and the like.
Variable-length-decoder (VLD) parser 604 is a circuit for searching a
stream of variable-length coded data to determine the positions of
particular portions of data. Key insertion circuit 606 is a data insertion
circuit for writing data into a stream of digitized data.
Recording apparatus 608 is a conventional recording apparatus for recording
digital data on a storage medium such as an optical disc, a
magneto-optical disc, a magnetic tape, a magnetic disc, a semiconductor
memory, and the like. Detection circuit 612 is a circuit for recognizing
the presence or absence of key data in a certain portion of data. Control
circuit 614 is a control processor device, such as a microprocessor, for
controlling the operation of a display and a recording apparatus. Display
apparatus 616 is a display device for displaying predetermined visual
images, such as text, to a user.
Digital data reproduced from a master recording is supplied to VLD parser
604. VLD parser 604 supplies the reproduced digital data to key insertion
circuit 606 and analyzes the reproduced digital data to locate certain
data areas incorporated into the reproduced digital data, e.g. data areas
where key data may be stored, as indicated by the address information. In
the first embodiment of the present invention, VLD parser 604 detects
user-data data areas in the reproduced digital data and supplies position
information regarding the position of the detected user-data data areas to
key insertion circuit 606. In the second embodiment of the present
invention, VLD parser 604 detects time-code data areas in the reproduced
digital data and supplies position information regarding the position of
the detected time-code data areas to key insertion circuit 606. In the
third embodiment of the present invention, VLD parser 604 detects SQUANT
data areas in the reproduced digital data and supplies position
information regarding the position of the detected SQUANT data areas to
key insertion circuit 606. Optionally, VLD parser 604 may extract data
stored in the detected data area, variable-length decode such data, and
supply the decoded extracted data to key insertion circuit 606.
VLD circuit 604 extracts data at the addressed location and supplies the
extracted data to detection circuit 612. Detection circuit 612 analyzes
the extracted data to determine the presence or absence of key data. The
result of the determination is supplied to control circuit 614.
Specifically, detection circuit 612 may read a portion of the extracted
data and supply the read data to control circuit 614.
Control circuit 614 controls the operation of display apparatus 616 and the
operation of recording apparatus 608 in accordance with the detection
result obtained by detection circuit 612. As key data may be represented
by a number of detection results, control circuit 614 may collect and
analyze together a number of detection results from detection circuit 612
to determine the presence or absence of key data. Key memory 602 supplies
reference key data to key insertion circuit 606 and to control circuit
614.
Preferably, control circuit 614 compares the detection result(s) supplied
by detection circuit 612 with the reference key data. If the reference key
data corresponds to the detection result(s) then key data has been
detected; otherwise, key data has not been detected. If key data is not
detected, control circuit 614 controls display apparatus 616 to display a
predetermined display indicating to a user that no key data has been
detected, e.g. that the reproduced data has been reproduced from a legal
master, and controls recording apparatus 608 to record the reproduced
digital data. If key data is detected, control circuit 614 controls
display apparatus 616 to display a predetermined display indicating to a
user that key data has been detected and controls recording apparatus 608
to inhibit recording of the reproduced digital data.
Key insertion circuit 606 inserts or otherwise writes key data into the
reproduced digital data at the location indicated by the position
information supplied by VLD parser 604. For example, key data may be
written into a user-data area, a time-code data area, a SQUANT data area,
or the like. Optionally, key insertion circuit 606 inserts or otherwise
writes key data into the decoded extracted data, variable-length encodes
such data, and incorporates such data into the reproduced digital data.
Key insertion circuit 606 supplies the modified digital data to recording
apparatus 608. Under the control of control circuit 614, recording
apparatus 608 may record the modified digital data onto an original
storage medium, such as optical disc 610, or inhibit such recording. From
the original storage medium a stamper may be produced for the mass
production of storage media bearing the modified digital data. In this
manner, storage media, such as optical discs, are produced with key data
recorded thereupon.
According to a fourth embodiment of the present invention, key data is
stored in a data area defined for the storage of digital data
corresponding to original source information. For example, key data may be
stored in a data area defined for the storage of video data, such as pixel
data. More specifically, key data may be coded as a fixed length code and
stored in data area defined for the storage of pixel data.
FIGS. 7 and 8 illustrate the selection of key data insertion points
according to the present invention. As shown, from among a group of
pictures contain "N" pictures, a single B frame is selected as the
recipient of key data. Of course other frames may be selected to hold key
data; however, it is preferred that a B frame store such data to minimize
error caused by the displacement of video data with key data. In certain
slices of the selected frame, a number of macroblocks are selected to
receive key data. (The selected macroblocks have been depicted as dark
rectangles.) One of the blocks in a selected macroblock is further
selected to receive key data.
The selected block, preferably comprised of an 8.times.8 array of pixels,
is discrete-cosine transformed to produce DCT coefficients Coeff›u! ›v!,
shown in FIG. 8. DCT coefficients Coeff›u! ›v! are quantized to produce
quantization levels QF›u! ›v!. Quantization levels QF›u! ›v! are zigzag
scanned (scan›0! to scan›63!) beginning with the quantization level which
includes a DC component and ending with quantization levels including
higher frequency components. The quantization level QF›7! ›7!, scan›63!,
corresponding to the highest frequency component, is selected as the data
area for insertion of key data.
To insert key data into the selected data area, it is preferred that the
value stored in the selected data area is modified such that the second
least significant bit of such value equals logical "1". This insertion of
key data may be achieved with a logical OR operation, e.g. QF›7! ›7!=QF›7!
›7! OR 2. Preferably, the least significant bit of the value stored in the
selected data area is used to actually store the key data.
Further, the data located in selected data area QF›7! ›7!, scan›63!, is
coded as an escape code. Coding this data as an escape code ensures that
the data will be included in the block in a fixed length code (FLC). As
shown, an escape code is formed as a fixed length code that preferably
includes a six-bit Escape.sub.-- code data area, a six-bit RUN data area,
and a 12-bit Level data area. The value stored in the Escape.sub.-- code
data area identifies the codeword as an escape code. The value stored in
the RUN data area represents the number of quantization coefficients
having a certain value, e.g. zero. The value stored in the Level data area
represents the value of non-zero quantization coefficients.
The insertion of key data is compatible with escape coding according to an
MPEG standard since the standard merely requires that the value stored in
the Level data area of an escape code may not equal zero. By setting the
second least significant bit in the Level data area to a logical zero
value, the value stored in the Level data area will be nonzero always.
Further, since only the two least significant bits of the Level data area
are used for the storage of key data, the resulting introduction of error
in the display of the corresponding image will be generally imperceptible
to the ordinary viewer.
According to the above-described method, the least significant bit of a
particular data area in one block of video data is used to store key data.
To incorporate key data comprising a multiple bit code, multiple blocks of
video data may be used to store individual bits of the multiple bit code.
Of course, each block may be from the same or a different slice of data,
frame of data, or the like. FIG. 9 illustrates the concatenation of "n"
individual bits obtained from "n" blocks, respectively, to form "n"-bit
key data.
FIG. 10 illustrates an encoder 1000 for recording original source
information 102 to produce a legal master, such as legal master disc 106,
which is compatible with the key data encoding methods of the fourth
embodiment described hereinabove. Encoder 1000 includes a frame memory
502, addition circuits 504 and 518, a DCT circuit 506, a quantization
circuit 508, a motion vector detection circuit 512, a prediction memory
514, a motion compensation circuit 516, a dequantization circuit 520, and
an inverse discrete cosine transform (IDCT) circuit 522 which have the
same construction and function as the correspondingly numbered elements
previously described. Encoder 1000 further includes a pattern ROM 1002, a
logic OR circuit 1004, and a VLC circuit 1006.
Pattern ROM 1002 is a conventional storage device, such as a semiconductor
memory or the like, for storing address information. Alternatively,
pattern ROM 1002 may be replaced with a source of variable address
information, such as an address calculating device, a random access memory
device, or the like, for providing different address information. Logic OR
circuit 1004 is a circuit for modifying certain portions of a signal to
have a specific content, such as a logical "1". VLC circuit 1006 is a
variable length encoding device for encoding quantized data according to a
variable-length encoding method.
Processing of original source information 102 by frame memory 502, addition
circuit 504, DCT circuit 506, and quantization circuit 508 occurs as
described above. However, in encoder 1000, quantization circuit 508
supplies the quantized data to OR circuit 1004. Pattern ROM 1002 supplies
address information to OR circuit 1004 and to VLC circuit 1006 regarding a
particular portion of quantized data. Preferably, pattern ROM 1002
supplies information identifying a particular block or blocks of quantized
data.
In accordance with the address information supplied by pattern ROM 1002, OR
circuit 1004 modifies a particular portion of the quantized data supplied
by quantizaton circuit 508 to facilitate storage of key data. Preferably,
OR circuit 1004 modifies the second least significant bit of the last
codeword in the block designated by pattern ROM 1002, e.g. QF›7! ›7! of
scan ›63!. The second least significant bit is preferably modified to have
a value equal to logical "1". The modified quantized data is supplied to
VLC circuit 1006 and to dequantization circuit 52.
VLC circuit 1006 encodes the modified quantized data supplied by OR circuit
1004 to produce variable-length coded data which are supplied for
recording on a master storage medium, such as a legal master disc or a
legal master tape. Preferably, in accordance with address information
supplied by pattern ROM 1002, VLC circuit 1006 encodes as an ESCAPE code a
particular portion of the quantized data supplied by OR circuit 1004, e.g.
QF›7! ›7! of scan ›63! of the block designated by pattern ROM 1002. The
ESCAPE code is structured as Escape.sub.-- code+RUN+Level as shown in FIG.
8.
Processing of the modified quantized data by dequantization circuit 520,
IDCT circuit 522, adding circuit 518, and motion compensation circuit 516,
along with motion vector processing by motion vector detection circuit 512
and motion compensation information storage by prediction memory 514, is
achieved according to the method of operation previously described in
connection with encoder 500.
FIG. 11 illustrates a formatter 1100 for mass duplication of digital data
reproduced from a master recording produced by encoder 1000. Formatter
1100 includes a key memory 602, a recording apparatus 608, a control
circuit 614, and a display apparatus 616 which have the same construction
and function as the correspondingly numbered elements previously
described. Formatter 1100 further includes a variable-length-decoder (VLD)
parser 1102, a pattern ROM 1104, a key insertion circuit 1106, and a
detection circuit 1108.
Variable-length-decoder (VLD) parser 1102 is a circuit for searching a
stream of variable-length coded data to determine the positions of
particular portions of data. Pattern ROM 1104 is a conventional storage
device, such as a semiconductor memory or the like, for storing address
information. Preferably, pattern ROM 1104 stores the same address
information as is stored in pattern ROM 1002. Alternatively, pattern ROM
1104 may be replaced with a source of variable address information, such
as an address calculating device, a random access memory device, or the
like, for providing different address information. Key insertion circuit
1106 is a data insertion circuit for writing data into a stream of
digitized data. Detection circuit 1108 is a circuit for recognizing the
presence or absence of key data in a certain portion of data.
Digital data reproduced from a master recording and address information
supplied by pattern ROM 1104 is supplied to VLD parser 1102. VLD parser
1102 supplies the reproduced digital data to key insertion circuit 1106
and analyzes the reproduced digital data to locate certain data areas
incorporated into the reproduced digital data, e.g. data areas where key
data may be stored, as indicated by the address information. Preferably,
address information supplied by pattern ROM 1104 pertains to the position
of data located at QF›7! ›7! in scan ›63! of a particular data block
indicated by the address information.
VLD parser 1102 detects data located at QF›7! ›7! in scan ›63! of the data
block indicated by the address information and supplies position
information regarding the position of the detected data areas to key
insertion circuit 1106. Optionally, VLD parser 1102 may extract data
stored in the detected data area, variable-length decode such data, and
supply the decoded extracted data to key insertion circuit 1106. VLD
parser 1102 extracts data at the addressed location and supplies the
extracted data to detection circuit 1108.
Detection circuit 1108 analyzes the extracted data to determine the
presence or absence of key data. Preferably, detection circuit 1108
determines whether the second least significant bit of QF›7! ›7! of scan
›63! of the extracted data is a logical "1". The result of the
determination, or simply a value from the extracted data, is supplied to
control circuit 614.
Key memory 602 supplies reference key data to key insertion circuit 1106
and to control circuit 614. Key insertion circuit 1106 inserts or
otherwise writes key data into the reproduced digital data at the location
indicated by the position information supplied by VLD parser 1102. For
example, key data may be written into QF›7! ›7! of scan ›63! of a
particular block. Optionally, key insertion circuit 1106 may insert or
otherwise write key data into decoded extracted data, variable-length
encode such data, and incorporate such data into the reproduced digital
data. Key insertion circuit 1106 supplies the modified digital data to
recording apparatus 608.
Control circuit 614, recording apparatus 608, and display apparatus 616
operate in a manner corresponding to that previously described in
connection with formatter 600. In this manner, key data is incorporated
into data areas defined for the storage of original source information,
e.g. video signals, audio signals, text data, or the like. The
incorporation of key data into such data areas hinders efforts to detect,
remove, or modify such data.
Each of the embodiments described hereinabove is compatible with an MPEG
video standard. Also, by incorporating a key data insertion device in the
formatter, each embodiment achieves a greater security function as
compared to devices which may insert security data during the data
encoding process, e.g. production of a master recording. Further, since
formatting devices tend to be more expensive and, therefore, less
prevalent than encoding devices, enforcement of data duplication rights at
the formatting stage of production, through implementation of the present
invention, rather than at the encoding stage of production, is more likely
to be successful.
Although illustrative embodiments of the present invention and
modifications thereof have | | |