10 STREAMING PROTOCOLS

Protocol
Demos

Interactive demonstrations of every streaming protocol the ms engine supports — from legacy RTMP to cutting-edge MoQ/QUIC. Each demo shows how the protocol works, its transport mechanism, and how to use it with the ms binary.

6Browser-Playable
4Server-Side
10Total Protocols
BROWSER PLAYABLE

HLS HTTP Live Streaming

Apple's adaptive streaming protocol. Splits video into small TS segments (.ts) served with an M3U8 playlist. The browser requests segments sequentially, enabling adaptive bitrate switching.

Live Player

Select a source and click Generate

How It Works

Source File
.mp4 / .mkv
ms streaming hls
Segment + Mux
.ts Segments
playlist.m3u8
hls.js
MSE Pipeline
TransportHTTP/HTTPS
Segment FormatMPEG-TS (.ts) or fMP4 (.m4s)
PlaylistM3U8 (UTF-8)
Latency2-30s (standard), <2s (Low-Latency)
AdaptiveYes — multiple renditions in M3U8
ms Command
ms streaming hls input.mp4 hls/ --segment-duration 4
BROWSER PLAYABLE

DASH Dynamic Adaptive Streaming over HTTP

MPEG-DASH is an international standard for adaptive streaming. Uses MPD (Media Presentation Description) XML manifests to describe available representations and segment URLs.

Live Player

Select a source and click Generate

How It Works

Source File
.mp4 / .mkv
ms streaming dash
Segment + MPD
.m4s Segments
manifest.mpd
dash.js
MSE Pipeline
TransportHTTP/HTTPS
Segment FormatfMP4 (CMAF)
ManifestMPD (XML)
Latency2-30s (standard), <4s (Low-Latency)
AdaptiveYes — MPD describes all representations
ms Command
ms streaming dash input.mp4 dash/ --segment-duration 4
BROWSER PLAYABLE

WHEP WebRTC-HTTP Egress Protocol

WHEP is a standardized protocol for WebRTC playback. The client sends an SDP offer via HTTP POST to the server, receives an SDP answer, and media flows peer-to-peer over WebRTC with sub-second latency.

WebRTC Player

Enter a WHEP endpoint URL
Latency: Resolution: Bitrate:

How It Works

WHEP Server
Live Source
HTTP POST
SDP Offer → Answer
ICE/DTLS
P2P Connection
Browser
WebRTC recvonly
TransportWebRTC (UDP/DTLS/SRTP)
SignalingHTTP POST (SDP exchange)
Latency200-500ms
NAT TraversalICE/STUN/TURN
EncryptionDTLS-SRTP mandatory
ms Command
ms streaming whep --endpoint https://server/whep
INGEST PROTOCOL

WHIP WebRTC-HTTP Ingest Protocol

WHIP is the ingest counterpart to WHEP. The publisher captures camera/mic via getUserMedia, creates an RTCPeerConnection, and POSTs the SDP offer to the WHIP endpoint. The server then retranscodes for HLS/DASH delivery.

WebRTC Publisher

Enter a WHIP endpoint URL
State: Idle Resolution: FPS:

How It Works

Camera/Mic
getUserMedia
WebRTC Send
RTCPeerConnection
WHIP Server
HTTP POST SDP
Transcode
HLS / DASH / WHEP
TransportWebRTC (UDP/DTLS/SRTP)
SignalingHTTP POST (SDP offer)
Ingest Latency<500ms to server
Video CodecVP8, VP9, H.264, AV1
Audio CodecOpus
ms Command
ms streaming whip --source camera --endpoint https://server/whip
EMERGING

MoQ Media over QUIC

MoQ is an IETF draft protocol for low-latency media transport over QUIC. Uses WebTransport in browsers for sub-second delivery. Media is encoded with CMAF-compatible fMP4 and delivered via QUIC datagrams or streams.

WebTransport Player

Click "Start Server" to launch the MoQ relay, then "Connect" to play
Protocol: QUIC/HTTP3 Latency: <500ms Codec: CMAF fMP4

How It Works

Publisher
CMAF fMP4
QUIC Stream
WebTransport
MoQ Relay
Fan-out
Subscriber
MSE + WebTransport
TransportQUIC / HTTP/3
Media FormatCMAF fMP4 (LOC or MOQT)
Latency<500ms
Browser APIWebTransport
IETF Draftdraft-ietf-moq-transports
ms Commands
ms streaming moq --port 4433
ms streaming moq-publish hls/ --relay https://localhost:4433
LEGACY

RTMP Real-Time Messaging Protocol

RTMP is Adobe's legacy protocol for Flash-based streaming. Still widely used for ingest (OBS → server). Operates over persistent TCP connections with FLV container framing. Not playable in modern browsers without Flash.

RTMP Ingest Flow

📹
OBS / Encoder
RTMP Push
📦
📦
📦
🖥️
RTMP Server
Transcode → HLS/DASH
🌐
Browser
HLS / DASH Playback
RTMP Ingest URL: rtmp://server/live/stream_key
Protocol: TCP Container: FLV Latency: 1-3s

How It Works

Encoder
OBS / FFmpeg
RTMP Push
TCP :1935
Media Server
Transcode
HLS/DASH
Browser Playback
TransportTCP (persistent connection)
Port1935 (default)
ContainerFLV (Flash Video)
CodecH.264 + AAC (typically)
StatusLegacy — still used for ingest
ms Command
ms streaming rtmp ingest --server rtmp://server/live --key stream_key
PROFESSIONAL

SRT Secure Reliable Transport

SRT is an open-source protocol for reliable video transport over unreliable networks. Uses ARQ (Automatic Repeat reQuest) for packet recovery, AES encryption, and operates on UDP with sub-second latency. Designed for broadcast contribution links.

SRT Connection Flow

📡
SRT Sender
Camera / Encoder
RTT12ms
Loss0.1%
Bandwidth48 Mbps
📺
SRT Receiver
Server / Decoder
SRT Listen URL: srt://0.0.0.0:9000?mode=listener&latency=120
Protocol: UDP + ARQ Encryption: AES-128/256 Latency: 60-500ms

How It Works

Encoder
H.264/H.265
SRT Handshake
HSv4 + AES
UDP + ARQ
Packet Recovery
Decoder
Media Server
TransportUDP with ARQ
EncryptionAES-128/256-GCM
Latency60-500ms (configurable)
Packet RecoveryARQ (NAK-based retransmit)
Use CaseBroadcast contribution, remote production
ms Command
ms streaming srt listen --port 9000 --latency 120
ms streaming srt call --host 192.168.1.100 --port 9000
BROADCAST

NMOS Networked Media Open Specifications

NMOS (IS-04/IS-05) provides REST APIs for device discovery and connection management in professional broadcast IP workflows. IS-04 registers senders/receivers, IS-05 manages connection routing. Media flows over ST 2110.

NMOS Registry Browser

🗂️ IS-04 Registry (http://reg.local:8000)
💻 ms-broadcast-001 Device
📡 ms-sender-video Sender video
🔊 ms-sender-audio Sender audio
📺 ms-receiver-video Receiver Connected
🖥️ vizrt-switcher Device
📡 pgm-out-video Sender video
IS-04 Device
{
  "id": "ms-broadcast-001",
  "label": "ms broadcast node",
  "description": "MediaStream Engine broadcast",
  "tags": { " rack": "1", "room": "studio-a" },
  "senders": ["ms-sender-video", "ms-sender-audio"],
  "receivers": ["ms-receiver-video"]
}

How It Works

Devices
Senders/Receivers
IS-04 Registry
REST API Discovery
IS-05 Manager
Connection Routing
ST 2110
Media Transport
IS-04Device Discovery + Registration
IS-05Connection Management
IS-08Audio Channel Mapping
APIREST (JSON over HTTP)
TransportST 2110 (RTP/UDP)
ms Command
ms broadcast nmos --registry http://reg.local:8000
ms broadcast nmos senders --registry http://reg.local:8000
PROFESSIONAL

ST 2110 SMPTE Professional Media Over IP

SMPTE ST 2110 is the broadcast industry standard for professional media over IP networks. Separates video (2110-20), audio (2110-30), and ancillary data (2110-40) into independent RTP streams, enabling flexible routing and processing.

ST 2110 Stream Topology

Source
🎬 ST 2110-20
Video (uncompressed)
~3 Gbps
🔊 ST 2110-30
Audio (LPCM)
~10 Mbps
📝 ST 2110-40
Ancillary Data
~1 Mbps
IP Fabric Switch
PTP Sync (IEEE 1588)
Destination
📺 Video Out
1080p60 / 4K
🔈 Audio Out
8ch / 64ch
Video: 2110-20 (uncompressed) Audio: 2110-30 (LPCM) Sync: PTP (IEEE 1588)

How It Works

SDI Source
Genlock / PTP
ST 2110 Tx
RTP + FEC
IP Fabric
IGMP Multicast
ST 2110 Rx
De-jitter Buffer
TransportRTP over UDP (multicast)
SyncPTP / IEEE 1588
VideoUncompressed / JPEG-XS
Bandwidth3-24 Gbps per stream
FECSMPTE ST 2022-7 (seamless protection)
ms Command
ms broadcast st2110 --interface eth0
ms broadcast st2110 transmit --multicast 239.1.1.1 --port 5000
PRO A/V

IPMX IP Media Experience

IPMX (IP Media Experience) is an interoperability profile built on SMPTE ST 2110, designed for the Pro AV industry. Based on the AIMS Alliance specifications, it provides plug-and-play AV over IP for presentation, signage, and live event environments.

IPMX Network Topology

📷
Camera
Tx
💻
Laptop
Tx
🎵
Audio Mixer
Tx/Rx
📺
Display
Rx
🖥️
LED Wall
Rx
IPMX Network Switch
NMOS IS-04 NMOS IS-05 PTP mDNS
Based on: ST 2110 Discovery: NMOS + mDNS Sync: PTP

How It Works

Pro AV Devices
Cameras, Switchers
IPMX Switch
PTP + IGMP
ST 2110 Streams
Video + Audio
NMOS Control
IS-04 + IS-05
StandardsAIMS / SDVoE / SDIA
TransportST 2110 (RTP/UDP multicast)
DiscoveryNMOS IS-04 + mDNS
Use CasesLive events, digital signage, corporate AV
CodecH.264/H.265 or JPEG-XS
ms Command
ms broadcast ipmx --interface eth0
ms broadcast ipmx discover --registry http://reg:8000

Protocol
Comparison

Protocol Transport Latency Adaptive Browser Encryption Use Case
HLSHTTP2-30sYesTLSGeneral streaming
DASHHTTP2-30sYesTLSGeneral streaming
WHEPWebRTC200-500msYesDTLS-SRTPLive playback
WHIPWebRTC<500msDTLS-SRTPLive ingest
MoQQUIC/HTTP3<500msYes⚠️TLS 1.3Next-gen streaming
RTMPTCP1-3sNoNone/TLSLegacy ingest
SRTUDP+ARQ60-500msNoAES-128/256Broadcast contrib
NMOSREST/HTTPTLSDevice discovery
ST 2110RTP/UDP<1msNoMACsecPro broadcast
IPMXRTP/UDP<1msNoMACsecPro AV over IP