In order to take appropriate action against errors at the receiver, they have to be detected first. This is usually done by examining packet headers. For example, RTP provides a minimal service,4.2 as its packets have a sequence number, and timestamp information, which make the detection of lost packets automatic. Sequence numbers are used in the RTP payload data for specific applications as well, for example, there is a GOB sequence number in the aforementioned H.263 payload header.
Once an error is detected, the decoder should resynchronise itself. This is straightforward in packet loss, as the next valid packet is identifying the next valid data, in contrast to bit errors, where special techniques such as FEC have to be applied. The next step is to recover the lost packet, possibly using auxiliary information from the encoder. If this is not possible, an attempt to make the error less noticeable to the human viewer, or conceal the error, takes place.
The main principle of error concealment at the receiver is the exploitation of the limitations of the human visual system. For instance, people tolerate more distortion to the high spatial frequency components, corresponding to detail and edges in an image, than to their low frequency counterparts. For typical video sequences, most image data is varying smoothly in the spatial and temporal direction, thus low-frequency components are predominant, which can be exploited as well. The results of error concealment are highly dependent on the forward error control techniques used, namely the type of the concealment redundancy inserted in the encoded bitstream.
Two main ways exist for the techniques applied for postprocessing at the decoder: prediction and interpolation. These are described in the following paragraphs.