Streaming
The streaming history is probably since the use of internet. At the very beginning Real Media has used an inter-based streaming, which can use either HTTP or RTSP to setup streaming.
However, as the common client is Windows based users, therefore, Microsoft has also developed their own streaming protocol, MMS (MultiMedia Streaming).
As RTSP stands for Real Time Streaming Protocol is the standard protocol for Streaming, it is widely used in various industry for streaming. RTSP is TCP based protocol, along with it, there are RTP and RTCP for data transfer and Section Control.
RTP and RTCP are UDP packets, because all data are for real time, it is not allowed to have packet retransmission and delay because of acknowledgement. Under RTCP, there are information about packet delay and packet lost for server to do adjustment about the streaming quality.
In RTSP, there are several command, DESCRIBE, SETUP, PLAY, PAUSE and TEARDOWN. Under DESCRIBE, there is SDP (Session Describe Protocol) to narrate the streaming details, include the content of each track (audio/video) etc. Therefore client could have a choice for which video to streaming.
In case of live streaming (real time streaming without specific ending time), range under SDP is like this:
Range: npt=0-
Also, the timestamp in each RTP and sampling rate in SDP can be used to calculate which the packet is for which NPT:
(TimestampX - Timestamp0)/Sampling Rate
That piece of information is important for trouble shooting as well.
