码过程。对于P-帧和B-帧，首先做运动补偿。通常来说，由于相邻帧之间的相关性很强，宏块可以在前帧和后帧中对应相近的位置找到相似的区域匹配的比较好，这个偏移量作为运动向量被记录下来，运动估计重构的区域的误差被送到编码器中编码。对于每一个8×8小块，离散余弦变换把图像从空间域转换到频域。得到的变换系数被量化并重新组织排列顺序，从而增加长零的可能性。之后做游程编码（run-length code）。最后作哈夫曼编码（Huffman Encoding）。I帧编码是为了减少空间域冗余，P帧和B帧是为了减少时间