Skip to main content
Red5 Cloud accepts live streams over two ingest protocols: RTMP for traditional software and hardware encoders, and WebRTC via WHIP for browser-based or WebRTC-native publishers. Both deliver low-latency streams to your Red5 Cloud deployment. Your publishing endpoint for either protocol is available in the Pub/Sub Details of your deployment.

RTMP encoding

Real-Time Messaging Protocol (RTMP) is a TCP-based protocol with persistent connections and broad support across encoders, hardware capture cards, and streaming software. It is the most common way to send a live stream from a desktop or on-premises encoder to a streaming server.

Getting your RTMP endpoint

1

Open Pub/Sub Details

In the Management Console, open the context menu for your deployment and select Pub/Sub Details.
2

Copy the RTMP Publishing Endpoint

The RTMP Publishing Endpoint is shown in the format:
rtmp://<server-ip>/live
The stream key you use in your encoder becomes the stream name on Red5 Cloud.
SettingRecommendation
Video codecH.264
H.264 profileBaseline (disables B-frames)
Keyframe interval2 seconds
Do not use H.264 profiles that include B-frames (such as High or Main) when delivering to WebRTC subscribers. B-frames cause playback to jump back and forth. Use the Baseline profile or explicitly disable B-frames in your encoder.
Resolution / FPSBitrate
360p @ 30fps500–800 kbps
480p @ 30fps800–1,200 kbps
720p @ 30fps2,000–2,500 kbps
720p @ 60fps2,500–3,050 kbps
1080p @ 30fps3,500–4,500 kbps
1080p @ 60fps4,500–6,000 kbps
4K @ 30fps10,000–12,000 kbps
4K @ 60fps12,000–14,000 kbps
SettingRecommendation
Preferred codecAAC
Fallback codecMP3 (only if AAC is unavailable)
Stereo bitrate128 kbps minimum; 192 kbps for higher quality

Publishing with OBS Studio

1

Open OBS Settings

In OBS Studio, go to File → Settings → Stream.
2

Set service to Custom

Set Service to Custom....
3

Enter the server URL

Paste your RTMP Publishing Endpoint into the Server field.
4

Set the stream key

Enter your desired stream name as the Stream Key (for example, myStream).
5

Configure output settings

Go to Settings → Output → Encoding. Select H.264, set the profile to Baseline, and choose a bitrate from the table above that matches your target resolution.
6

Start streaming

Click Start Streaming in the OBS main window.

Publishing with FFmpeg

ffmpeg \
  -re \
  -i input.mp4 \
  -c:v libx264 \
  -profile:v baseline \
  -preset veryfast \
  -b:v 2500k \
  -g 60 \
  -c:a aac \
  -b:a 128k \
  -f flv \
  rtmp://<server-ip>/live/myStream
Replace <server-ip> with your RTMP Publishing Endpoint host and myStream with your chosen stream name.

Choosing between RTMP and WHIP

RTMPWebRTC (WHIP)
Best forDesktop encoders, OBS, hardwareBrowser-based apps, low-dependency clients
ProtocolTCPUDP / HTTP
LatencyLow (~2–5 s)Sub-second
Encoder supportVery broadGrowing rapidly
For the lowest possible glass-to-glass latency, use WHIP for ingest and WHEP for playback. For maximum encoder compatibility and a proven workflow, use RTMP.