A video codec is the part of the software that handles converting stored digital information back to images and vice-versa. Different codecs have different capabilities, making them suitable for different applications.
Regular feature phones come with a fixed set of video codecs, while the capability of smartphones to playback different codecs can usually be expanded by installing third-party solutions.
The most popular mobile codecs are H.263 used in 3GP videos, H.264 in MPEG4 videos, and DivX and XviD for avi files.
The compressed data format usually conforms to a standard video compression specification. The compression is typically lossy, meaning that the compressed video lacks some information present in the original video. A consequence of this is that decompressed video has lower quality than the original, uncompressed video because there is insufficient information to accurately reconstruct the original video.
There are complex relationships between the video quality, the amount of data used to represent the video (determined by the bit rate), the complexity of the encoding and decoding algorithms, sensitivity to data losses and errors, ease of editing, random access, and end-to-end delay (latency).