Skip macroblock coding
First Claim
1. In a computer system, a computer-implemented method of processing one or more video images, the method comprising:
- selecting a coding mode from a group of plural available coding modes; and
processing a bit plane according to the selected coding mode, wherein the bit plane includes binary information for plural units of a video image, wherein the binary information represents characteristics of the plural units of the video image, wherein each of the plural units includes plural pixels, and wherein the binary information includes one bit for each of the plural units of the video image.
2 Assignments
0 Petitions
Accused Products
Abstract
Various techniques and tools for encoding and decoding (e.g., in a video encoder/decoder) binary information (e.g., skipped macroblock information) are described. In some embodiments, the binary information is arranged in a bit plane, and the bit plane is coded at the picture/frame layer. The encoder and decoder process the binary information and, in some embodiments, switch coding modes. For example, the encoder and decoder use normal, row-skip, column-skip, or differential modes, or other and/or additional modes. In some embodiments, the encoder and decoder define a skipped macroblock as a predicted macroblock whose motion is equal to its causally predicted motion and which has zero residual error. In some embodiments, the encoder and decoder use a raw coding mode to allow for low-latency applications.
273 Citations
50 Claims
-
1. In a computer system, a computer-implemented method of processing one or more video images, the method comprising:
-
selecting a coding mode from a group of plural available coding modes; and
processing a bit plane according to the selected coding mode, wherein the bit plane includes binary information for plural units of a video image, wherein the binary information represents characteristics of the plural units of the video image, wherein each of the plural units includes plural pixels, and wherein the binary information includes one bit for each of the plural units of the video image. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. In a computer system, a computer-implemented method of processing plural video images in a video image sequence, the method comprising:
-
selecting a coding mode from a group of plural available coding modes; and
processing a bit plane according to the selected coding mode, wherein the bit plane includes binary information signifying whether macroblocks in a predicted video image are skipped or not skipped, and wherein a macroblock in the predicted video image is skipped if the motion for the macroblock is equal to the predicted motion of the macroblock and the macroblock has no residual error. - View Dependent Claims (12)
-
-
13. In a computer system, a method of processing plural video images of a video sequence, the plural video images including one or more predicted video images, wherein each of the one or more predicted video images includes plural macroblocks, the method comprising:
processing one or more skipped macroblocks among the plural macroblocks of at least one of the one or more predicted video images, wherein each of the at least one of the one or more predicted video images is predicted from no more than one reference video image, wherein each of the one or more skipped macroblocks uses predicted motion for the skipped macroblock based upon motion of one or more other macroblocks, and wherein each of the one or more skipped macroblocks lacks residual information. - View Dependent Claims (14, 15)
-
16. In a computer system, a method of processing plural video images of a video sequence, the plural video images including plural predicted macroblocks, wherein each of the plural predicted macroblocks is predicted from no more than one reference video image, the method comprising:
processing one or more skipped macroblocks among the plural predicted macroblocks, wherein each of the one or more skipped macroblocks uses predicted motion for the skipped macroblock based upon motion of one or more other predicted macroblocks, and wherein each of the one or more skipped macroblocks lacks residual information. - View Dependent Claims (17, 18)
-
19. In a computer system, a computer-implemented method of processing one or more images in a video image sequence, wherein a bitstream syntax for the video image sequence includes plural hierarchical layers, the plural hierarchical layers including at least a sequence layer, a picture layer, and a macroblock layer, the method comprising:
processing a bit plane at a layer higher than the macroblock layer in the bitstream syntax for the video image sequence, wherein the bit plane includes binary information for plural macroblocks in an image in the video image sequence, wherein each of the plural macroblocks includes plural blocks, wherein each of the plural blocks includes plural pixels, and wherein the binary information includes one bit for each of the plural macroblocks in the image. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26)
-
27. In a computer system, a computer-implemented method of processing one or more images in a video image sequence, wherein a bitstream syntax for the video image sequence includes plural hierarchical layers, the plural hierarchical layers including at least a picture layer and a macroblock layer, the method comprising:
processing skipped macroblock information at a layer higher than the macroblock layer in the bitstream syntax for the video image sequence, wherein the skipped macroblock information is for plural macroblocks in an image in the video image sequence, wherein each of the plural macroblocks includes plural blocks, wherein each of the plural blocks includes plural pixels. - View Dependent Claims (28, 29, 30, 31)
-
32. In a computer system, a computer-implemented method of processing plural images in a video image sequence, wherein skipped macroblock information is associated with the plural images, the method comprising:
-
selecting a coding mode from a group of plural available coding modes, wherein at least two of the plural available coding modes involve reduction of bitrate associated with the skipped macroblock information; and
processing the skipped macroblock information according to the selected coding mode. - View Dependent Claims (33, 34, 35, 36, 37, 38)
-
-
39. In a computer system, a computer-implemented method of processing plural units in a video image sequence, wherein binary information represents characteristics of plural units, wherein each of the plural units includes plural pixels, and wherein the binary information includes one bit for each of the plural units, the method comprising:
-
selecting a coding mode from a group of plural available coding modes, wherein the plural available coding modes include a low latency coding mode; and
if the selected coding mode is the low latency coding mode, processing the binary information according to the selected coding mode at a unit layer in a bitstream syntax for the video image sequence, otherwise, processing the binary information as a bit plane according to the selected coding mode at a layer higher than the unit layer in the bitstream syntax for the video image. - View Dependent Claims (40, 41)
-
-
42. In a computer system, a computer-implemented method of processing plural units in a video image sequence, wherein a bitstream syntax for the video image sequence includes plural hierarchical layers, the plural hierarchical layers including a sequence layer and a unit layer, the method comprising:
-
selecting a coding mode from a group of plural available coding modes, wherein the plural available coding modes include a low latency coding mode; and
if the selected coding mode is the low latency coding mode, processing binary information according to the selected coding mode at the unit layer, otherwise, processing the binary information as a bit plane according to the selected coding mode at a layer higher than the unit layer. - View Dependent Claims (43, 44)
-
-
45. In a computer system, a computer-implemented method of compressing a bit plane comprising binary symbols in a matrix arranged in rows or columns, the method comprising:
-
for each row in the bit plane where each binary symbol in the row is equal to a first value, or for each column in the bit plane where each binary symbol in the column is equal to a first value, encoding the row or column with a single bit in an encoded bit stream; and
for each row in the bit plane where at least one binary symbol in the row is not equal to the first value, or for each column in the bit plane where at least one binary symbol in the column is not equal to the first value, encoding the row or column with one bit per binary symbol in the row or column. - View Dependent Claims (46, 47)
-
-
48. In a computer system, a computer-implemented method of processing one or more video images, the method comprising:
processing a bit plane according to a coding mode, wherein the bit plane includes binary information for plural units of a video image, wherein the binary information represents characteristics of the plural units of the video image, wherein each of the plural units includes plural pixels, wherein the binary information includes one bit for each of the plural units of the video image, and wherein an invert flag indicates whether to invert the bit plane as part of the processing. - View Dependent Claims (49, 50)
Specification