Real Time Messaging Protocol - Specification Document

Specification Document

Adobe released what it claimed was the RTMP specification on 15 June 2009. That specification, however, omits crucial details of the protocol's implementation. It would be impossible to write a program incorporating the RTMP protocol based on the released specification alone; many essential details are omitted, and only limited additional facts can be determined by studying other implementations that use the protocol (such as librtmp), and by carrying out test TCP/IP packet captures.

The Adobe license to use this protocol requires that implementations of RTMP servers meet this specification.

Details missing from Adobe's published specification include:

  • No word about the real RTMP handshake. If done incorrectly, a server implementation is unable to deliver H.264/AAC content. Flash player silently fails the H.264 content if the handshake is wrong. However, all client implementations will work because usually rtmp servers are more permissive in this regard (including FMS)
  • The fact that chunks are sent up to a maximum chunk size only; and that where a chunk exceeds that size it is still sent, with a header giving the total chunk size, but that after the maximum chunk size has been exceeded, a type 4 chunk header is then sent, starting the next part of the fragmented chunk.
  • Explanations for some control messages for streams are missing (31 and 32). FMS sends them from time to time.

Read more about this topic:  Real Time Messaging Protocol

Famous quotes containing the word document:

    ... research is never completed ... Around the corner lurks another possibility of interview, another book to read, a courthouse to explore, a document to verify.
    Catherine Drinker Bowen (1897–1973)