Install & Upgrade Specifications Setup Streaming Local/FTP File HLS HTML Web Video RTMP SRT DVB MPEG-TS MPEG-DASH Blackmagic DeckLink Newtek NDI Webcam & Screen IP Camera Advanced Settings Seamless Streaming Multi-bitrate Video Codecs NVIDIA GPU Intel GPU NETINT VPU Video Overlay

IPTV OTT Encoding & Streaming

RTMP Streaming Protocol

Understanding RTMP Streaming Protocol

What is RTMP?

RTMP (Real Time Messaging Protocol) is a standardized streaming protocol used for broadcasting video to live streaming platforms and content distribution networks. Originally developed by Adobe for Flash Media Server, RTMP has become the industry standard for delivering live video to YouTube, Twitch, Facebook Live, and many professional streaming services. RTMP provides low-latency broadcast capabilities with reliable video delivery.

RTMP Variants and Security

RTMP protocol supports multiple variants for different security and transport requirements: RTMP (unencrypted TCP), RTMPE (encrypted), RTMPS (secure/SSL), and RTMPT (tunneled over HTTP). Choose the variant supported by your streaming destination platform. Most modern platforms recommend RTMPS for secure authenticated streaming.

Why RTMP for Live Streaming

RTMP remains popular for live streaming despite its age because it offers proven reliability, low latency suitable for interactive broadcasting, widespread platform support (YouTube, Twitch, Facebook, OBS, Wowza), and excellent compatibility with legacy broadcast workflows. RTMP's persistent connection model ensures continuous stable streaming for scheduled broadcasts.

RTMP Source Configuration

Stream from RTMP Server

Select RTMP and enter the stream URL that is playable by an SWF player or VLC player, for example: rtmp://192.168.0.1/vod/sample or rtmp://192.168.0.1/live/stream. If you need to consume streams from an external RTMP source, IPVTL can accept input from any standard RTMP server or streaming application.

RTMP Authentication and Credentials

If RTMP authentication is required on the source server, enter the username and password in the following format:
rtmp://<username>:<password>@<server_address>:<port>/<app>/<stream_name>/<stream_key>
This format automatically embeds credentials in the connection URL for seamless authentication without requiring separate credential management.

RTMP Protocol Variants

Secure RTMP URLs (rtmps, rtmpe, rtmpt) are fully supported if required by your source server. IPVTL automatically handles protocol negotiation and encryption based on the URL scheme you provide. For maximum compatibility with CDN servers and firewalls, RTMPT (tunneled over HTTP port 80) is recommended when standard RTMP connectivity fails.

Alternative Sources: yt-dlp for Web Video

Note you can't stream directly from YouTube or Twitch video pages using RTMP protocol. Instead, use yt-dlp to extract streaming URLs from those platforms and then re-stream them via RTMP.

RTMP Publishing to Live Streaming Platforms

Stream RTMP to YouTube, Twitch, or Facebook Live Channels

IPVTL works with third-party RTMP servers such as Nginx-rtmp, Adobe Flash Media Server, Wowza Streaming Engine, and all major live streaming platforms. Before configuring RTMP output, ensure you have obtained a valid RTMP publishing URL, either from an RTMP server you built yourself or from YouTube, Twitch, Facebook, and similar platforms. You can verify the URL using OBS Studio to confirm it works properly.

YouTube Live RTMP Setup

For YouTube Live streaming, your publishing URL will look like:
rtmp://a.rtmp.youtube.com/live2/1234-5678-9ABC-DEFG
Obtain this URL from YouTube Studio's Create > Go Live section. YouTube automatically generates unique stream keys for each broadcast. You can reuse the same stream key across multiple broadcast sessions or generate new keys for each session.

Twitch Live RTMP Configuration

Twitch uses the following RTMP publishing URL format:
rtmp://live.twitch.tv/app/12345678abcd
Where the suffix is your unique stream key from Twitch Creator Dashboard > Settings > Stream Key. Never share your stream key publicly as it allows anyone to broadcast to your Twitch channel.

Facebook Media RTMP Broadcasting

Facebook Live requires secure RTMPS publishing:
rtmps://rtmp-api.facebook.com:443/rtmp/1226334177416540?ds=1&s_l=1&a=AabUoS3yJSRhM2T
Get your unique URL from Facebook's Live Video Creation Tool. Facebook includes additional parameters for stream configuration and security token validation.

RTMP Video Encoding Configuration

H.264 vs H.265/HEVC Encoding

H.264 is the traditional standard for RTMP streaming and is supported by all RTMP platforms and players. For maximum compatibility with older devices and legacy RTMP servers, H.264 is recommended. However, H.265/HEVC offers 40-50% better compression, reducing bandwidth requirements by the same proportion while maintaining quality.

HEVC Extended FLV Format

Since version 6.1.4.4, IPVTL supports H.265/HEVC in extended FLV format (type 12 in videoTag.codecId) that complies with newer CDNs. By leveraging advanced HEVC encoding technology, streaming bandwidth can be reduced significantly compared to H.264. Note that older RTMP servers and some legacy players may not support HEVC, so verify platform compatibility before selecting HEVC.

Bitrate and Quality Configuration

Configure RTMP output bitrate based on your source video resolution and target streaming platform: for 720p HD streaming use 2500-4000 kbps, for 1080p HD use 5000-8000 kbps, for 4K use 15000+ kbps. Most streaming platforms recommend starting at their suggested bitrate and adjusting based on audience quality feedback and network conditions.

Multi-bitrate RTMP streaming is also supported. To do that, configure multiple RTMP outputs with different addresses and video bitrates. See Multi-bitrate Streaming for more details.

Advanced RTMP Configuration

IPVTL RTMP Config

Go to Advanced Format Settings > RTMP Config to access additional RTMP parameters. These settings provide fine-grained control over RTMP protocol behavior and server compatibility.

Custom RTMP Server Hosting

To build your own RTMP streaming server, configure Nginx-rtmp or Wowza Streaming Engine with appropriate publishing URLs and authentication. IPVTL can connect to these custom servers for internal content distribution, redundant backup streaming, or multi-platform simultaneous broadcasting.

RTMP Integration with IPVTL Features

RTMP output integrates with all IPVTL encoding and distribution capabilities: