3.2.5.13 Receiving an EndOfStream Response

The server MUST validate that the response adheres to the syntax as specified in section 2.2.7.3. If the EndOfStream response request does not adhere to the syntax specified in section 2.2.7.3, the server MUST NOT process any of the headers in the response and SHOULD continue normal processing as if a syntactically valid EndOfStream response had been received.

The status code in the response SHOULD be ignored. Therefore, normal processing continues even if the client indicates that the EndOfStream request failed.

The server MUST then wait for another request or response to be received.

If the server has sent an Announce request, it is supposed to have received a response to that request by this time. If the value of the Announce-Sent variable is 1, the server MUST wait to receive the response to the Announce request, as previously stated. How to process the Announce response is specified in section 3.2.5.14.

If the value of the State variable is READY, then any one or more of the following requests are possible: SelectStream, Play, LogPlay, KeepAlive, SendEvent, or Teardown request.

If the value of the State variable is PLAYING, then any one or more of the following requests are possible: LogPlay, SelectStream, Pause, or KeepAlive request. The server MUST continue transmitting RTP packets while in the PLAYING state and MUST be prepared to receive RTCP packets.

How to process a LogPlay request is specified in section 3.2.5.12.

How to process a SelectStream request is specified in section 3.2.5.6.

How to process a Play request is specified in section 3.2.5.8.

How to process a Pause request is specified in section 3.2.5.11.

How to process a KeepAlive request is specified in section 3.2.5.15.

How to process a SendEvent request is specified in section 3.2.5.16.

How to process a Teardown request is specified in section 3.2.5.17.

How to process RTCP packets is specified in section 3.2.5.10.