This step may also require converting your images from their native format into another format that is required by the encoding process. Because images are typically compressed to form an animation during encoding, there is some data loss that is occurring during this process. This manifests itself as grainy images when the movies are later displayed. The degree of compression can be controlled in most cases, as can other important factors such as image size, desired playback rate and number of colours used. It is up to the person encoding their data to strike the right balance between all of these factors when designing animations for the Web, keeping in mind the potential limitations in harware that will be used by others to retrieve an display them.
Several algorithms exist for encoding image sequences into animations.
The most desirable ones are those that can obtain a high degree of compression while maintaining good playback fidelity. Decoding This refers to the deciphering of encoded animations, and is the necessary step required to view them. Like encoding, decoding can be done using software alone, or with hardware assistance. The speed of software-only decoders is related to the algorithm that is used and is also dependent on the CPU speed of the computer which runs the software. If animations with higher resolutions, frame rates and colour depths are required, and the CPU speed and video hardware are not fast enough, specialized hardware decoders should be considered.