2.2.4 RTCP NACK Packet Syntax

The syntax for the RTCP NACK packets defined by RTSP Windows Media Extensions follows the syntax for RTCP packets, as specified in [RFC3550] section 6.1, and the syntax for generic NACK messages, as specified in [RFC4585] section 6.2.1, with the following exception.

Unlike what is specified in [RFC4585] section 6.1, which defines the FMT field of the RTCP feedback message to be a 5-bit field, RTSP Windows Media Extensions defines the FMT field to be 4 bits in size. The 4 least-significant bits, as specified in [RFC4585] section 6.1, of the FMT field are mapped to the 4-bit FMT field defined by RTSP Windows Media Extensions.

The most significant bit of the FMT field, as specified in [RFC4585] section 6.1, is redefined by RTSP Windows Media Extensions as the E field.

A client that sends an RTCP NACK packet SHOULD set the E field to 1. Servers MUST ignore the value of the E field.

According to the RTCP specification, as specified in [RFC3550] section 6.1, RTCP packets are compound packets consisting of multiple RTCP messages, and all RTCP packets MUST contain a source description (SDES) message with the CNAME field. RTSP Windows Media Extensions define the following additional requirement.

An RTCP packet that contains a generic NACK message, as specified in [RFC4585] section 6.2.1, MUST also contain an SDES message, as specified in [RFC3550] section 6.5, where the value of the CNAME field in the SDES message MUST adhere to the following syntax.

 ssrc                   = 1*10DIGIT
 sdes-value      = ssrc "@WMS:7ff42e07-3c7c-4eb5-9c17-6bdd11ad90de"

The preceding syntax is specified using Augmented Backus-Naur Form (ABNF) [RFC5234].

The value of the ssrc parameter MUST be identical to the numerical value of the ssrc field that the server provided in the RTSP Transport (section 2.2.6.11) header in response to the SETUP request (as specified in [RFC2326] section 10.4) for the retransmission stream, expressed using decimal digits. For information on how to identify the retransmission stream, see section 2.2.5.2.5.