Inter sub-mode decision process in a transcoding operation
First Claim
1. A method for determining one or more sub-block sizes for a macroblock in a transcoding process for an incoming bitstream, the method comprising:
- determining a macroblock in the incoming bitstream;
dividing the macroblock into a plurality of segmented blocks, each segmented block being characterized by a first size including a plurality of pixels;
determining for each of the plurality of segmented blocks, a statistical measure comprising a sum of absolute difference (SAD), computed for each of the plurality of segmented blocks using a motion vector for the macroblock;
comparing the statistical measures for a first one and a second one of the plurality of segmented blocks within the macroblock; and
if the difference between the statistical measures for the first one and the second one of the plurality of segmented blocks is lower than a predetermined threshold, combining the first and second segmented blocks, and selecting the size of the combination as a sub-block size for the transcoding process for the first and second segmented blocks;
but if the difference between the statistical measures for the first one and the second one of the plurality is not lower than the predetermined threshold, comparing the statistical measures for the first one and a third one of the plurality of segmented blocks within the macroblock; and
if the difference between the statistical measures for the first one and the third one of the plurality of segmented blocks is lower than the predetermined threshold, combining the first and third segmented blocks, and selecting the size of the combination as a sub-block size for the transcoding process for the first and third segmented blocks;
but if the difference between the statistical measures for the first one and the third one of the plurality is not lower than the predetermined threshold, selecting the first size as a sub-block size for the transcoding process for the first segmented block.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a macroblock is determined in an incoming bitstream. In one example, the macroblock may be a 16×16 macroblock for a first coding standard, such as MPEG-2. The macroblock is then divided into a plurality of segmented blocks. For example, an arbitrary sized segment of blocks may be used to divide the macroblock into segmented blocks. In one example, the macroblock is divided into four 8×8 segmented blocks. A plurality of statistical measures are then determined for the plurality of segmented blocks. For example, for each segmented block, a sum of absolute differences (SAD) is determined. Then, one or more sizes for the sub-blocks are determined based on the comparison. For example, a variable sub-block size for an AVC bitstream is determined.
-
Citations
4 Claims
-
1. A method for determining one or more sub-block sizes for a macroblock in a transcoding process for an incoming bitstream, the method comprising:
-
determining a macroblock in the incoming bitstream; dividing the macroblock into a plurality of segmented blocks, each segmented block being characterized by a first size including a plurality of pixels; determining for each of the plurality of segmented blocks, a statistical measure comprising a sum of absolute difference (SAD), computed for each of the plurality of segmented blocks using a motion vector for the macroblock; comparing the statistical measures for a first one and a second one of the plurality of segmented blocks within the macroblock; and if the difference between the statistical measures for the first one and the second one of the plurality of segmented blocks is lower than a predetermined threshold, combining the first and second segmented blocks, and selecting the size of the combination as a sub-block size for the transcoding process for the first and second segmented blocks; but if the difference between the statistical measures for the first one and the second one of the plurality is not lower than the predetermined threshold, comparing the statistical measures for the first one and a third one of the plurality of segmented blocks within the macroblock; and if the difference between the statistical measures for the first one and the third one of the plurality of segmented blocks is lower than the predetermined threshold, combining the first and third segmented blocks, and selecting the size of the combination as a sub-block size for the transcoding process for the first and third segmented blocks; but if the difference between the statistical measures for the first one and the third one of the plurality is not lower than the predetermined threshold, selecting the first size as a sub-block size for the transcoding process for the first segmented block. - View Dependent Claims (2)
-
-
3. An apparatus configured to determining one or more sub-block sizes for a macroblock in a transcoding process for an incoming bitstream, the apparatus comprising:
-
one or more processors; and logic encoded in one or more tangible media for execution by the one or more processors and when executed operable to; determine a macroblock in the incoming bitstream; divide the macroblock into a plurality of segmented blocks, each segmented block being characterized by a first size including a plurality of pixels determine for each of the plurality of segmented blocks, a statistical measure comprising a sum of absolute difference (SAD), computed for each of the plurality of segmented blocks using a motion vector for the macroblock; compare the statistical measures for a first one and a second one of the plurality of segmented blocks within the macroblock; and if the difference between the statistical measures for the first one and the second one of the plurality of segmented blocks is lower than a predetermined threshold, combine the first and second segmented blocks, and select the size of the combination as a sub-block size for the transcoding process for the first and second segmented blocks; but if the difference between the statistical measures for the first one and the second one of the plurality is not lower than the predetermined threshold, compare the statistical measures for the first one and a third one of the plurality of segmented blocks within the macroblock; and if the difference between the statistical measures for the first one and the third one of the plurality of segmented blocks is lower than the predetermined threshold, combine the first and third segmented blocks, and select the size of the combination as a sub-block size for the transcoding process for the first and third segmented blocks; but if the difference between the statistical measures for the first one and the third one of the plurality is not lower than the predetermined threshold, select the first size as a sub-block size for the transcoding process for the first segmented block. - View Dependent Claims (4)
-
Specification