To be able to broadcast audio or video content over the Internet, it is necessary to encode the signal first. The broadcast encoders are used for this purpose. The encoded signal is then transmitted to a RTMP server using RTMP. The protocol also has the task of transmitting the coded signals to a Content Delivery Network or online video platform. How this transfer takes place depends on the RTMP variant used.
The standard variant of the network protocol uses the TCP transport protocol on the harbor 1935. Blocks of data are exchanged between the client and the server first. This process is also called handshake or « handshake ». This tells the server which protocol version is being used. A timestamp is also sent to the server. As soon as the server informs it that it has received these two blocks of data and when, the connection can be established.
The client sends the server a connect request in the format Action Message Format, then waits for confirmation from the server. Once the client receives it, they can start streaming in real time.
This establishes a persistent connection which transmits data in real time. Streaming data is transmitted in blocks of different sizes. For video data the block size is 128 bytes, for audio data 64 bytes. The latency of RTMP is relatively low due to the use of TCP.
Another variant of Real Time Messaging Protocol is HTTP-based RTMPT. Tunneling technology is used to bypass firewalls. HTTPS-based RTMPS also works similarly.
From the RTMP server, the stream can also be transmitted directly to terminals using HLS.