3.3.5.1.1.2 Processing a Client Audio Formats and Version PDU

The structure and fields of the Client Audio Formats and Version PDU (client PDU) are specified in section 2.2.2.2. The server MUST receive this message prior to receiving any other message that is sent by the client. If the client sends this PDU out of sequence (section 3.1.5), for example, before the server sends the Server Audio Formats and Version PDU (server PDU) to the client, the server can make a best effort to process the client PDU as if it had arrived after the server PDU was sent.<17>

The list of formats that are sent by the client are referenced in the data transfer sequence. The wFormatNo field of the WaveInfo PDU, the UDP Wave Last PDU, and the Wave Encrypt PDU all represent an index into this list. A value of I refers to the Ith format of this list, which means that the audio data is encoded in the Ith format of the list.

The wDGramPort field holds the value of the port that the server MUST use to send data over UDP. If the value is set to 0, the server MUST use virtual channels for the data transfer sequence. If the field is not set to 0, the server SHOULD<18> use UDP.

Although the dwPitch field specifies the initial pitch on the client, the server does nothing with this value.