Overall architecture

Overall, the codec is a classic motion-compensated hybrid codec. The coder has the architecture shown below, whilst the decoder performs the inverse operations.

Figure: Overall hybrid encoder architecture

There are four main elements or modules to the coder:

The following sections describe these modules in more detail, after first describing the rate-distortion framework used throughout the encoder.

Currently the encoder does not support interlaced coding. This just means that there are no special tools for motion estimation and motion compensation which take into account the different temporal locations of the two fields within a frame. We hope to develop these tools in the next few months, but interlaced video can be coded using the standard tools, although it won't perform as well.

The codec can support any frame dimensions and common chroma formats (luma only, 444, 422, 420, 411) by means of frame padding. The padding ensures that the wavelet transform can be applied properly. Frame padding also allows for any size blocks to be used for motion estimation, even if they do not evenly fit into the picture dimensions. NB: frame padding may be required because the (normally subsampled) chroma components have need padding even if the luma does not; in this case all components are padded.

Table of contents Previous: Introduction Next: Rate Distortion Optimisation