These pictures are encoded only with respect to themselves. Here each
picture is composed onto blocks of 8x8 pixels each that are encoded only
with respect to themselves and are sent directly to the block transformation
process.

Predictive pictures (P-pictures)

These are pictures encoded using motion compensated prediction from a past
I-picture or P-picture. A prediction error is calculated between a 16x16
pixels region (macroblock) in the current picture and the past reference I
or P picture. A motion vector is also calculated to determine the value and
direction of the prediction. For progressive sequences and interlaced
sequences with frame-coding only one motion vector will be calculated for
the P-pictures. For interlace sequences with field-coding two motion vectors
will be calculated. The prediction error is then composed to 8x8 pixels
blocks and sent to the block transformation

Bi-directional pictures (B-pictures)

These are pictures encoded using motion compensates predictions from a past
and/or future I-picture or P-picture. A prediction error is calculated
between a 16x16 pixels region in the current picture and the past as well as
future reference I-picture or P-picture. Two motion vectors are calculated.
One to determine the value and direction of the forward prediction the other
to determine the value and direction of the backward prediction. For
field-coding pictures in interlaced sequences four motion vectors will thus
be calculated.

It should be noted that a B-picture can never be used as a prediction picture
(obviously!).

The method of calculating the motion vectors as well as the search area for
the best predictor is left to be determined by the encoder.