Abstract:
A method of processing video frame data includes the steps of: receiving a video frame; partially decoding the video frame; fully decoding the video frame to produce macroblocks; determining video data parameters from the partially decoded video frame or both the partially and fully decoded video frame; and encoding the macroblocks based on the determined video data parameters to provide a compressed video frame for subsequent display.
Abstract:
A cache memory system for use in a motion estimation system is disclosed. The system includes: a first cache memory defined in terms of a first width and a first height, and a second cache memory defined in terms of a second width and a second height, wherein said second height is less than said first height, the cache memory system being operable in one of two modes: the first mode being characterized by banks of memory from the second cache memory being concatenated vertically such that their concatenated height is at least equal to the first height, and said concatenated banks being arranged to be appended to the width of the first cache memory to form a single contiguous address space; and the second mode being characterized by banks of memory from the first and second cache being stacked vertically, and being arranged to be addressed as two separate address spaces.
Abstract:
A method of transferring sets of video line data and macroblock data, comprising the steps of determining a macroblock period and a video line period longer than the macroblock period, dividing each set of video line data to be transferred within the video line period into two or more portions according to the difference between the determined macroblock period and video line period, aligning a burst transfer of each of the portions of the divided set of video line data and each set of macroblock data to the macroblock period, and initiating the burst transfer of the sets of video line data and macroblock data at macroblock period intervals.