What is RTMP?
RTMP (Real Time Messaging Protocol) is a protocol used by Flash Player to play on demand and live streams. The Flash player can stream on-demand content from a web server (as a progressive download) or both live and on-demand streams by using a streaming media server, such as Wowza Streaming Engine™ software. RTMP can contain multiple channels of video, audio, and data. RTMP provides low-latency streaming.
RTMP is also used for server-to-server streaming between Wowza live stream repeater edge servers and an origin server.
RTMP is a TCP-based stateful protocol; it maintains persistent connections. This means that audio, video, and data can move in both directions in an RTMP connection. For example, media content can move between a Streaming Engine software client and a Flash client, and either client can play or publish audio and video and send and receive commands and data. Using a Flash RTMP application as a client enables a wide variety of applications, including audio/video/text chat, ad insertion (pre-roll), pay-per-view and pay-per-minute (PPV,PPM), and rich user experience applications synchronized with stream content.
By default, RTMP uses TCP port number 1935.
RTMP defines several virtual channels, or tracks, on which packets may be sent and received, and which operate independently of each other. These tracks may contain audio, video, or data. There is typically at least one audio, video, and data track in an RTMP stream. The data track may contain cue points, also called timed text; RTMP clients can be designed with callback functions that listen for cue points. These client-side callback functions might display captions, subscribe to new streams, or change the user interface.
During a typical RTMP session, several channels are active simultaneously. RTMP packets are interleaved and multiplexed across several different active channels to ensure that each channel meets its bandwidth, latency, and other quality of service (QoS) requirements.
There are a number of RTMP protocol sub types:
- RTMPS is RTMP encrypted over a TLS/SSL connection.
- RTMPE is a version of RTMP that uses Adobe's own security mechanism for encryption.
NOTE: RTMPE has proven to have security issues.
- RTMPT is encapsulated within HTTP requests and can traverse firewalls.
For more information about RTMP, see: http://en.wikipedia.org/wiki/Real_Time_Messaging_Protocol#Encryption
© 2013 Wowza Media Systems, LLC. Wowza and related marks are registered trademarks of Wowza Media Systems, LLC. Flash and related marks are registered trademarks of Adobe Systems Incorporated. iPhone, iPad, and Apple TV are registered trademark of Apple, Inc. Silverlight is a registered trademark of Microsoft Corporation. All other trademarks are the property of their respective owners. Third party trademarks are used solely to identify and describe third party products as being compatible with Wowza products. Wowza is in no way sponsored, endorsed by or otherwise affiliated with any such third party trademark owners.