Video compression method and apparatus
First Claim
1. A video compression system comprising:
- a first memory device;
a first processor configured to process video data according to a first video compression process, and to write processed data to the memory device; and
a second processor configured to read video data processed by the first video compression process from the memory device while the first processor is writing processed data to the memory device, and process the read data by a second video compression process.
3 Assignments
0 Petitions
Accused Products
Abstract
A video compression system includes first and second dual-port memory devices, a third memory device, and first and second processors that may provide enhanced processing, including motion estimation. The first processor may be configured to store in the second memory device first and second video frames and to transfer sequential sets of data from the first video frame corresponding to fields of search. A second set of a plurality of adjacent macroblocks of the second video frame may be compared to macroblocks selected from the field of search. Dual-port memory devices may allow for the concurrent use of shared memory by the two processors as well as data transfer during processing.
43 Citations
85 Claims
-
1. A video compression system comprising:
-
a first memory device;
a first processor configured to process video data according to a first video compression process, and to write processed data to the memory device; and
a second processor configured to read video data processed by the first video compression process from the memory device while the first processor is writing processed data to the memory device, and process the read data by a second video compression process. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A video compression system comprising:
-
a first memory device;
a second memory device; and
a first processor configured to store in the first memory device data representative of at least a portion of a first video frame, to transfer sequential sets of data representative of corresponding portions of the frame from the first memory device to the second memory device, to process each current set of data stored in the second memory device according to a first video compression process while transferring a sequentially next set of data from the first memory device to the second memory device. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21)
-
-
22. A video compression system comprising:
-
a first memory device; and
a first processor configured to store in the first memory device a set of video data representative of a first field of search including a first set of a plurality of macroblocks of a first video frame, and to search the first set of macroblocks relative to a second set of a plurality of adjacent macroblocks of a second video frame. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A video compression system comprising:
-
first and second dual-port memory devices;
a third memory device;
a first processor configured to store in the second memory device data representative of first and second video frames, to transfer sequential sets of data representative of corresponding portions of the first frame from the second memory device to the third memory device, each set of data representative of a first field of search including a first set of a plurality of macroblocks of a first video frame, and to process each set of data stored in the third memory device according to a first motion estimation process, the first motion estimation process including searching the first set of macroblocks relative to a second set of a plurality of adjacent macroblocks of a second video frame, the first motion estimation process being performed while transferring, from the second memory device to the third memory device, a portion of a sequentially next set of data not included in the set of data currently stored in the third memory device, the first processor further being configured to write processed data processed according to the first motion estimation process to the first memory device; and
a second processor configured to read video data processed by the first processor from the first memory device while the first processor is writing processed data to the first memory device, and process the read data by a second motion estimation process including searching an associated plurality of macroblocks selected from the first set of macroblocks, relative to each macroblock of the second set of macroblocks, and comparing sequentially each macroblock in the second set with overlapping macroblocks included in the data corresponding to an associated plurality of macroblocks selected from the first set, and comparing each macroblock of the second set concurrently with a plurality of macroblocks from the first set.
-
-
33. A method of compressing video data comprising:
-
processing video data according to a first video compression process;
writing processed data to a first memory device;
while writing processed data, reading processed data from the memory device; and
processing the read data by a second video compression process. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
-
-
46. A method of compressing video data comprising:
-
storing in a first memory device data representative of at least a portion of a first video frame;
transferring sequential sets of data representative of corresponding portions of the frame from the first memory device to a second memory device;
processing each set of data stored in the second memory device according to a first video compression process; and
during processing of each set of data stored in the second memory device, transferring a sequentially next set of data from the first memory device to the second memory device. - View Dependent Claims (47, 48, 49, 50, 51, 52, 53)
-
-
54. A method of compressing video data comprising:
-
storing in a first memory device a set of data representative of a first field of search including a first set of a plurality of macroblocks of a first video frame; and
searching the first set of macroblocks relative to a second set of a plurality of adjacent macroblocks of a second video frame. - View Dependent Claims (55, 56, 57, 58, 59, 60, 61, 62, 63)
-
-
64. A storage medium having a plurality of machine-readable instructions that, when executed, provide for:
-
processing video data according to a first video compression process;
writing processed data to a first memory device;
while writing processed data, reading processed data from the memory device; and
processing the read data by a second video compression process. - View Dependent Claims (65, 66, 67, 68, 69, 70, 71, 72)
-
-
73. A storage medium having a plurality of machine-readable instructions that, when executed, provide for:
-
storing in a first memory device data representative of at least a portion of a first video frame;
transferring sequential sets of data representative of corresponding portions of the frame from the first memory device to a second memory device;
processing each set of data stored in the second memory device according to a first video compression process; and
during processing of each set of data stored in the second memory device, transferring a sequentially next set of data from the first memory device to the second memory device. - View Dependent Claims (74, 75, 76, 77, 78)
-
-
79. A storage medium having a plurality of machine-readable instructions that, when executed, provide for:
-
storing in a first memory device a set of data representative of a first field of search including a first set of a plurality of macroblocks of a first video frame; and
searching the first set of macroblocks relative to a second set of a plurality of adjacent macroblocks of a second video frame. - View Dependent Claims (80, 81, 82, 83, 84, 85)
-
Specification