Share via


3.1.5.5 SP-Frame and Cached Frame mechanisms

Both encoder and decoder can periodically cache decoded video frames. The cached video frame is stored in a dedicated memory location in addition to the current reference decoded I and P frames. The caching mechanism is done in a synchronized fashion, meaning that the video encoder and the video decoder MUST have a copy of the same decoded video frame in their cache whenever the encoder has finished encoding a video frame and the decoder is about to decode the same video frame.

The decoder on the receiver side MUST cache the cached frame because the next SP-frame references it.

The cache frame is signaled in the packetized video bitstream by means of the C field in the Packet Payload Format, as described in sections 2.2.2, 2.2.3 and 2.2.4. The encoder and decoder use only one cached frame at a time, so the data of the previous cached frame can be discarded whenever a new frame is cached.

When the encoder receives a packet loss event reported by the decoder, it can choose to encode the next P-frame using the cached frame as reference, as opposed to the previous P-frame or the previous I-frame. In this case, the P-frame is called a Super P-frame (SP-frame) because it is predicted from the latest cached frame and not from the previous P-frame or the previous I-frame. The presence of an SP-frame in the packetized video bitstream is signaled by the SP field in the Packet Payload Format, as described in sections 2.2.2, 2.2.3 and 2.2.4. Upon receiving an SP-frame, the decoder decodes the video frame using the cached frame reference.