摘要:
A design method for implementing a high-memory algorithm for motion estimation and compensation uses a low internal memory processor and a DMA engine that interacts with the processor and the algorithm. The DMA takes care of large data transfers from an external memory to the processor internal memory and vice-versa, without using the CPU clock cycles. The design method is scalable and is suited to handle huge bandwidths without slowing down the processor. To prevent the processor from being idle during DMA, the processing is pipelined and staggered so that motion compensation is performed on an earlier block or data that is available, while DMA fetches the reference data for the current block. Several DMAs may be set up under an ISR if necessary. The invention has application in video decoders including those conforming to H.264, VC-1, and MPEG-4 ASP.
摘要:
A method of obtaining a quantization value for macroblocks of a picture for video compression includes estimating 11, for a plurality of quantization values, a size of the picture in terms of a sum of all quantized coded coefficients. A linear relationship between a size of a macroblock and Activity of the macroblocks is assumed 12, where the Activity of the macroblock is the number of coded coefficients in the macroblock before discarding any coefficients or quantizing the remaining coefficients. The macroblocks are divided 13 into groups by their Activity level such that substantially a same number of pre-quantization coefficients are in each group. An average Activity of each group is determined 14. A quantization value for each group is determined 15 from the assumed linear relationship between a number of bits per macroblock and Activity of the macroblocks and the average Activity of the group, as imposed by a predetermined bit rate.
摘要:
A method of obtaining a quantisation value for macroblocks of a picture for video compression includes estimating 11, for a plurality of quantisation values, a size of the picture in terms of a sum of all quantised coded coefficients. A linear relationship between a size of a macroblock and Activity of the macroblocks is assumed 12, where the Activity of the macroblock is the number of coded coefficients in the macroblock before discarding any coefficients or quantising the remaining coefficients. The macroblocks are divided 13 into groups by their Activity level such that substantially a same number of pre-quantisation coefficients are in each group. An average Activity of each group is determined 14. A quantisation value for each group is determined 15 from the assumed linear relationship between a number of bits per macroblock and Activity of the macroblocks and the average Activity of the group, as imposed by a predetermined bit rate.