SYSTEM AND METHOD FOR DECOMPRESSING AND MAKING PUBLICALLY AVAILABLE RECEIVED MEDIA CONTENT
An apparatus for compressing media content is disclosed. The apparatus divides the media content into at least three predetermined portions, compresses each of the at least three portions using one of at least three different compression algorithms and makes the at least three compressed predetermined portions publicly available. Making the portions publicly available includes, for example, transmitting the portions over a computer network such as the Internet.
Latest AT&T Patents:
- Resource coordination including for full-duplex integrated access and backhaul
- Apparatuses and methods for facilitating an autonomous detection of high priority frequency bands and ranges
- Augmented reality event switching
- Method and system for metaverse and physical world association and mapping
- Apparatuses and methods for detecting suspicious activities through monitored online behaviors
The present application is a continuation of U.S. patent application Ser. No. 12/140,735, filed Jun. 17, 2008, which a continuation of U.S. patent application Ser. No. 10/839,368 filed on May 5, 2004, now U.S. Pat. No. 7,492,902, which is a continuation of U.S. patent application Ser. No. 09/863,286 filed on May 24, 2001, now U.S. Pat. No. 6,760,443, which is a continuation of U.S. patent application Ser. No. 08/888,014 filed on Jul. 3, 1997, now U.S. Pat. No. 6,266,419, which is related to U.S. patent application Ser. No. 08/888,009, filed Jul. 3, 1997, now U.S. Pat. No. 6,111,844, the contents of which are incorporated herein in their entirety.
BACKGROUND OF THE INVENTION1. Field of the Invention
The present invention relates to the field of computing. More particularly, the present invention relates to a method for protecting encoded media content for network distribution.
2. Discussion of Related Art
Recent technological advances involving digital data compression, network bandwidth improvement and mass storage have made networked distribution of media content more feasible. That is, media content, such as digitized music, can be conveniently distributed over the Internet. To protect the intellectual property rights associated with a particular piece of media content, it is desirable to obscure the media content to prevent pirating of the content.
Consequently, what is needed is a way for compressing media content for convenient network distribution, while also securing the compressed media content against unauthorized use.
SUMMARY OF THE INVENTIONThe present invention provides a method for compressing media content for convenient public distribution, such as over a computer network, while also securing the media content for controlling distribution of the media content and for preventing unauthorized use of the media content. The advantages of the present invention are provided by a method of compressing media content in which a first predetermined portion of a media content is compressed using a first data-based compression algorithm and inserted into a first portion of a data frame. A second predetermined portion of the media content is compressed using a second data-based compression algorithm and is inserted into a second portion of the data frame. The second predetermined portion of the media content is different from the first predetermined portion of the media content, and the second data-based compression algorithm is different from the first data-based compression algorithm. Preferably, at least one of the first and second data-based compression algorithms is a private data-based compression algorithm. The first and second portions of the data frame are separated by a predetermined header code, or can be separated by relative positions of the first and second predetermined portions of compressed media content within the data frame.
The present invention also provides a method for inserting a data stream not associated with the media content into a compressed media content bit stream. The inserted data stream is carried by at least one symbol in at least one initial data set associated with the DBCA. A preferential implementation uses designated symbols in one or more Huffman codebooks for embedding a watermark in the compressed bit stream. The value of the watermark bits recovered from the bit stream depend upon either the values associated with the symbols or alternatively the position of the symbol in the compressed bit stream.
According to the invention, a plurality of data frames are generated and are made available for distribution, for example, by transmission over a computer network, such as the Internet. Alternatively, the data frames can be made publicly available for storage in a memory device, such as a CD ROM.
A plurality of predetermined portions of the media content can be compressed using data-based compression algorithms and grouped into a respectively different portion of the data frame. Each respective predetermined portion of the media content is different from the first and the second predetermined portions of the media content. Similarly, the data-based compression algorithm used to compress a respective portion of the media content is different from the first and the second data-based compression algorithms. Preferably, at least one of the data-based compression algorithms is a private data-based compression algorithm.
Initial data associated with each private data-based compression algorithm is encrypted and made publicly available when the data frames are made available. The encrypted initial data is grouped into a data envelope within a data frame that is preferably available no later than a first data frame containing media content compressed using the private data-based compression algorithm with which the encrypted initial data is associated, but can be made available during a later data frame. Examples of initial data associated with at least one private data-based compression algorithm include a Huffman code-book and/or a vector quantization code-book.
According to the invention, the media content can include audio content, such as music and/or speech, images, video content, graphics and/or textual content.
The present invention is illustrated by way of example and not limitation in the accompanying figures in which like reference numerals indicate similar elements and in which:
The present invention provides a method for compressing media content for convenient distribution, such as over a computer network, while also securing the media content for controlling distribution of the media content and for preventing pirating of the media content. Compression algorithm, as used herein, is an algorithm that accepts an input data stream and produces a corresponding output data stream having substantially fewer bits. A data-based compression algorithm (DBCA) is an algorithm that is a subset of compression algorithms in general. The action of a DBCA, together with associated data, depends on a number of initial data values that have been determined before the compression operation begins (that is, without any knowledge of the particular input data sequence to be compressed). The initial data values may represent parametric values or may be used as lookup tables (i.e., as code-books) by the algorithm. Typical DBCAs are noiseless compression (e.g., Huffman) algorithms and vector quantization (VQ) algorithms. The initial data values may be static, i.e., the initial data values do not change, or dynamic, i.e., the initial data values adapt to the input data stream during the course of compression. Two DBCAs are different if the initial data values are different, whether the algorithms are different.
At step 13, a selected portion of the frequency-domain samples of the media content are compressed in a well-known manner using a publicly available DBCA, such as a DBCA having a public Huffman code-book as initial data. Each binary character code or token of the public DBCA represents at least one different quantized representation of the frequency-domain samples. When the media content is music, the selected portion of the frequency-domain samples that are compressed using the public DBCA corresponds to a selected frequency band of the audio content frequency spectrum, for example, 300 Hz to 3 kHz. In video transform coding, DC coefficients would be encoded with the standard table, while the AC coefficients would be encoded with the custom (private) table. The selected portion of the media content, according to the invention, may be null.
At step 14, the remaining frequency-domain samples corresponding to the remainder of the audio content frequency spectrum are similarly compressed in a well-known manner using a private DBCA, that is, a DBCA in which the initial data is not publicly available. Examples of initial data for private DBCA include private Huffman code-books and private VQ code-books. Alternatively, the compression performed in steps 13 and 14 can be done by any well-known greedy-type algorithm that converts data into tokens or character codes, such as a VQ algorithm, as long as at least one of the two compression steps is performed by a private greedy-type algorithm. Of course, the present invention provides that the data compression of each step 13 and 14 can be performed by a private DBCA.
At step 15, the tokens for the frequency-domain samples that were compressed using the public DBCA are inserted into a first predetermined portion 31 of a data frame 30, shown in
At step 16, the tokens for the frequency-domain samples that were compressed using the private DBCA are inserted into a second portion 32 of data frame 30. According to the invention, second portion 32 can be explicitly or implicitly encapsulated within data frame 30. When second portion 32 is explicitly encapsulated within data frame, a header 33 formed by a predetermined character code or predetermined sequence of character codes containing information relating to the private DBCA, such as escape characters and/or the number of characters contained in second portion 32.
At step 17, the data frames are made publicly available, such as available for distribution by transmission in a well-known manner over a computer network, such as the Internet, or by storage in a user-owned storage device, such as a CD-ROM, at a point-of-sale device. In one embodiment of the present invention, the initial information associated with each private DBCA that is used is encrypted in a well-known manner using a secure encryption algorithm and is encapsulated in the data frames preferably no later than the first data frame containing media content compressed using the private DBCA with which the encrypted initial data is associated, but can be encapsulated during a later data frame. In another embodiment, the initial data for the public DBCA is made available with the encrypted initial data of the private DBCA. In yet another alternative embodiment, both the initial data for the public and the private DBCAs are available at the recipient of publicly available data frames 30 and are not distributed when the data frames 30 are distributed. Of course, for this embodiment, the encrypted initial data of the private DBCA is secure and is not accessible to unauthorized individuals. At step 18, the data frames and any initial data are received by the intended recipient.
At step 19, the tokens corresponding to the public DBCA in the first portion 31 of each data frame are decompressed using the public DBCA. At step 20, the character codes corresponding to the private DBCA in the second portion 32 of each data frame are decompressed using the private DBCA. When the first portion 31 of each data frame has been compressed by a private DBCA, portion 31 of each data frame is decompressed accordingly. When encrypted initial information is encapsulated in the data frames, the initial information is decrypted prior to decompression using the private DBCA. At step 21, the frequency-domain samples resulting from the decompression steps 19 and 20 are reassembled to form frequency-domain samples of the frequency spectrum of the media signal represented by each data frame. At step 22, the frequency-domain samples are transformed to time-domain samples using well-known inverse Fourier transform techniques. At step 23, the time-domain samples are converted to the media content using well-known digital-to-analog techniques.
When the initial data for the private DBCA is not known at step 20, steps 21-23 operate on only the portion of the media content that was contained in the first portion 31 of the data frames. In this way, a limited version of the media content is generated that may entice the recipient to purchase the entire media content because the fidelity of the media content is not satisfying.
Functional blocks 41-45 correspond to steps of 11-16 of method 10 shown in
More generally, private DBCA 44 may have a plurality of distinct Huffman codes devoted to watermarking, for example, k is equal to 2′ characters. Then, up to K watermark bits can be inserted per special Huffman symbol. For purposes of security, more than one Huffman symbol devoted to the same bit sequence might be chosen. In the case of K watermark bits per insertion, control and timing 48 causes an insertion on average every (N/M)*K bits. Alternatively, custom DBCA 44 may use one or more otherwise unused codebook indices for watermark insertion. For example, when control and timing 48 indicates an insertion, bitstream formatter 45 may put a watermark index and some predetermined number of bits into the bitstream.
In this case, the watermark index appears to indicate an unused codebook. Similarly, the position of the watermark index may be used to indicate the value of the watermark data, for example, if the index occurs in an odd-numbered section in the bitstream, a “1” bit would be indicated, whereas appearance of the index in an even-numbered section indicates a “0” bit.
While the present invention has been described in connection with media having an audio content, such as music and/or speech, it will be appreciated and understood that the present invention is applicable to media having audio and/or image and/or video and/or graph and/or textual content, and that modifications may be made without departing from the true spirit and scope of the invention.
Claims
1. A method comprising:
- analyzing, via a processor, a media content to determine a first portion and a second portion;
- obtaining a first initial data associated with the first portion, wherein the first initial data comprises first adaptive data associated with an adaptive code-book, first fixed data associated with a fixed code-book, and first quantization data associated with gain quantization of the first portion;
- obtaining a second initial data associated with the first portion, wherein the second initial data comprises second adaptive data associated with the adaptive code-book, second fixed data associated with the fixed code-book, and second quantized data associated with gain quantization of the second portion;
- encoding the first portion using the first initial data to yield a first compressed portion; and
- encoding the second portion using the second initial data to yield a second compressed portion.
2. The method of claim 1, wherein the first compressed portion and the second compressed portion are encoded using different algorithms.
3. The method of claim 1, wherein the fixed code-book comprises a public Huffman code-book.
4. The method of claim 1, wherein the adaptive code-book comprises a private Huffman code-book.
5. The method of claim 1, further comprising communicating at least one of the first compressed portion and the second compressed portion over a computer network.
6. The method of claim 1, wherein at least one of the first portion and the second portion is a null portion of the media content.
7. The method of claim 1, wherein the first portion and the second portion are separated by a predetermined header code within the media content.
8. A system comprising:
- a processor; and
- a storage device storing instructions for controlling the processor to perform steps comprising: analyzing a media content to determine a first portion and a second portion; obtaining a first initial data associated with the first portion, wherein the first initial data comprises first adaptive data associated with an adaptive code-book, first fixed data associated with a fixed code-book, and first quantization data associated with gain quantization of the first portion; obtaining a second initial data associated with the first portion, wherein the second initial data comprises second adaptive data associated with the adaptive code-book, second fixed data associated with the fixed code-book, and second quantized data associated with gain quantization of the second portion; encoding the first portion using the first initial data to yield a first compressed portion; and encoding the second portion using the second initial data to yield a second compressed portion.
9. The system of claim 8, wherein the first compressed portion and the second compressed portion are encoded using different algorithms.
10. The system of claim 8, wherein the fixed code-book comprises a public Huffman code-book.
11. The system of claim 8, wherein the adaptive code-book comprises a private Huffman code-book.
12. The system of claim 8, wherein the storage device stores further instructions for controlling the processor to perform a further step comprising:
- further comprising communicating at least one of the first compressed portion and the second compressed portion over a computer network.
13. The system of claim 8, wherein at least one of the first portion and the second portion is a null portion of the media content.
14. The system of claim 8, wherein the first portion and the second portion are separated by a predetermined header code within the media content.
15. A non-transitory computer-readable storage medium storing instructions which, when executed by a computing device, cause the computing device to perform steps comprising:
- analyzing a media content to determine a first portion and a second portion;
- obtaining a first initial data associated with the first portion, wherein the first initial data comprises first adaptive data associated with an adaptive code-book, first fixed data associated with a fixed code-book, and first quantization data associated with gain quantization of the first portion;
- obtaining a second initial data associated with the first portion, wherein the second initial data comprises second adaptive data associated with the adaptive code-book, second fixed data associated with the fixed code-book, and second quantized data associated with gain quantization of the second portion;
- encoding the first portion using the first initial data to yield a first compressed portion; and
- encoding the second portion using the second initial data to yield a second compressed portion.
16. The non-transitory computer-readable storage medium of claim 15, wherein the first compressed portion and the second compressed portion are encoded using different algorithms.
17. The non-transitory computer-readable storage medium of claim 15, wherein the fixed code-book comprises a public Huffman code-book.
18. The non-transitory computer-readable storage medium of claim 15, wherein the adaptive code-book comprises a private Huffman code-book.
19. The non-transitory computer-readable storage medium of claim 15, wherein at least one of the first portion and the second portion is a null portion of the media content.
20. The non-transitory computer-readable storage medium of claim 15, wherein the first portion and the second portion are separated by a predetermined header code within the media content.
Type: Application
Filed: Oct 17, 2011
Publication Date: Feb 9, 2012
Applicant: AT&T Intellectual Property II, L.P. (Atlanta, GA)
Inventors: John Blakeway Lacy (Warren, NJ), Schuyler Reynier Quackenbush (Westfield, NJ), James H. Snyder (North Plainfield, NJ)
Application Number: 13/274,524
International Classification: H04K 1/00 (20060101); H04L 9/00 (20060101);