Reordering of compressed data
First Claim
1. A method comprising:
- receiving data;
encoding independently decodable pieces of the data to produce a compressed data stream in an input order;
rotating the independently decodable pieces of data, each by the same amount; and
reordering the rotated independently decodable pieces into an output order suited to the rotation.
2 Assignments
0 Petitions
Accused Products
Abstract
Apparatus and methods are provided for encoding independently decodable pieces of compressed data to accommodate reordering of the pieces of compressed data before or after manipulation. Encoding can occur before or after manipulation of the source information. For example, in the context of a JPEG image, MCUs can be rotated and promptly compressed with restart markers without extra buffering to put the MCUs in the correct rotated order. Later, the order of the independently decodable pieces can be changed to accommodate proper output. Alternatively, pointers to the independently decodable pieces can be used to present the data to the decoder in the proper order. Additional reentry information within the independently decodable pieces of compressed data can allow initiation of decoding at other than the independently decodable points. Such reentry information preferably would include bit-level pointers and sufficient state information to initialize the decoder properly. For example, in the context of a JPEG image, in addition to the typical information available to the decoder that has been passed in earlier markers, the reentry information for a given MCU boundary may include: a bit-level pointer to the first block'"'"'s DC Huffman code, the position of the output, and a DC predictor for each component of the MCU.
114 Citations
49 Claims
-
1. A method comprising:
-
receiving data; encoding independently decodable pieces of the data to produce a compressed data stream in an input order; rotating the independently decodable pieces of data, each by the same amount; and reordering the rotated independently decodable pieces into an output order suited to the rotation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method comprising:
-
receiving a compressed data stream; decoding desired information from the compressed data stream; manipulating the decoded information by rotating independent pieces of decoded data, each by the same amount; encoding the rotated independent piece of data into independently decodable pieces of compressed data to produce a compressed data stream in an order that differs from the correct output order; and sorting the independently decodable, rotated pieces of compressed data into the correct output order suited to the rotation. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A method of rotating Joint Photographic Experts Group (JPEG) compressed data comprising:
-
receiving Joint Photographic Experts Group (JPEG) compressed data; entropy decoding desired information from the JPEG compressed data; performing rotation in the transform domain by transposing coefficients of minimum coded units (MCUs) in the decoded information and appropriately negating certain coefficients'"'"' signs of the MCUs; and entropy encoding the rotated information into independently decodable pieces of compressed data to produce a compressed data stream in an order that differs from the correct output order; and reordering the independently decodable pieces of compressed data into the correct output order, suited to the rotation. - View Dependent Claims (26)
-
-
27. A machine-readable medium having stored thereon data representing sequences of instructions, said sequences of instructions, when executed by a processor, causing said processor to:
-
receive data; encode independently decodable pieces of the data to produce a compressed data stream in an input order; rotate the independently decodable pieces of data, each by the same amount; and reorder the rotated independently decodable pieces into an output order suited to the rotation. - View Dependent Claims (28)
-
-
29. A method comprising:
-
receiving data; encoding independently decodable pieces of the data to produce a compressed data stream in an order that differs from a correct output order, wherein the independently decodable pieces of data include one or more restart markers, wherein source data corresponding to the compressed data stream comprises image data, and wherein the image data is compressed according to one of the Joint Photographic Experts Group (JPEG) discrete cosine transform (DCT) based standards; updating modulo counters embedded within the one or more restart markers to reflect the correct output order; and reordering the independently decodable pieces into the correct output order. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A method comprising:
-
receiving a compressed data stream, wherein source data corresponding to the compressed data stream comprises image data compressed according to one of the Joint Photographic Experts Group (JPEG) discrete cosine transform (DCT) based standards; decoding desired information from the compressed data stream; manipulating the decoded information; and encoding the manipulated information into independently decodable pieces of compressed data to produce a compressed data stream in an order that differs from the correct output order, wherein the independently decodable pieces of data include one or more restart markers having embedded modulo counters to reflect the correct output order. - View Dependent Claims (42, 43, 44, 45)
-
-
46. A machine-readable medium having stored thereon data representing sequences of instructions, said sequences of instructions which, when executed by a processor, cause said processor to:
-
receive data; encode independently decodable pieces of the data to produce a compressed data stream in an order that differs from a correct output order, wherein the independently decodable pieces of data include one or more restart markers, wherein source data corresponding to the compressed data stream comprises image data, and wherein the image data is compressed according to one of the Joint Photographic Experts Group (JPEG) discrete cosine transform (DCT) based standards; update modulo counters embedded within the one or more restart markers to reflect the correct output order; and reorder the independently decodable pieces into the correct output order. - View Dependent Claims (47, 48, 49)
-
Specification