|
This article or section has multiple issues. Please help improve the article or discuss these issues on the talk page.
|
Global motion compensation (GMC) is a technique used in video compression to reduce the bitrate required to encode video. It is most commonly used in MPEG-4 ASP, such as with the DivX and Xvid codecs.
Contents |
Operation
Global motion compensation describes the motion in a scene based on a single affine transform instruction. The reference frame is panned, rotated and zoomed in accordance to GMC "warp points" to create a prediction of how the following frame will look. Since this operation works on individual pixels (rather than blocks), it is capable of creating predictions that are not possible using block-based approaches.
Each macroblock in such a frame can be compensated using global motion (no further motion information is then signalled) or, alternatively, local motion (as if GMC was off). This choice, while costing an additional bit per macroblock, can improve prediction quality and therefore reduce residual.
Because the transforms used in global motion compensation are only added to the encoding stream when used, they do not have a constant bitrate overhead. A predicted frame which uses GMC is called an S-frame ("sprite" frame) while a predicted frame encoded without GMC is called either a P-frame, if it was predicted purely by previous ("past") frames, or a B-frame if it was predicted jointly with past and later ("future") frames (an unpredicted frame encoded as a whole image is referred to as an I-frame).
Implementations
DivX has only one GMC "warp point" specified. This enables easier hardware implementation, but limits the global transform to panning operation only. Since panning can be described using blocks, this implementation rarely improves video quality.
Xvid allows up to 3 warp points, and as a result, has less hardware support. The DivX player, however, does support 3-warp-point GMC, and thus will play GMC Xvid-encoded streams.
Hardware compatibility
Due to the extra decoding CPU cost of global motion compensation, most hardware players do not support global motion compensation. One example is the Creative Zen Vision M, which supports Xvid and DivX encoded video, but only with GMC disabled.
See also
This entry is from Wikipedia, the leading user-contributed encyclopedia. It may not have been reviewed by professional editors (see full disclaimer)




