-
Notifications
You must be signed in to change notification settings - Fork 5
RTMP
im-pingo edited this page Mar 26, 2026
·
1 revision
English | 中文
LiveForge includes a full RTMP implementation supporting both ingest (publish) and playback (subscribe).
rtmp:
enabled: true
listen: ":1935"
chunk_size: 4096
# tls: true # Optional: override global TLS setting| Field | Type | Default | Description |
|---|---|---|---|
enabled |
bool | true |
Enable/disable the RTMP module |
listen |
string | ":1935" |
TCP listen address |
chunk_size |
int | 4096 |
RTMP chunk size in bytes |
tls |
*bool | nil |
Per-module TLS override (see Server & TLS) |
When TLS is enabled, the module serves RTMPS.
-
connect-- Client connection with app name -
createStream-- Create a new RTMP stream -
publish-- Begin publishing to a stream key -
play-- Begin subscribing to a stream key -
deleteStream-- Close a stream -
FCPublish/FCUnpublish-- Flash Communication publish commands -
releaseStream-- Release a stream key
- Settings > Stream
- Service: Custom
- Server:
rtmp://your-server:1935/live - Stream Key:
stream1
ffmpeg -re -i input.mp4 -c copy -f flv rtmp://localhost:1935/live/stream1When JWT auth is enabled, pass the token as a query parameter:
ffmpeg -re -i input.mp4 -c copy -f flv "rtmp://localhost:1935/live/stream1?token=eyJhbGciOi..."In OBS, append the token to the stream key:
stream1?token=eyJhbGciOi...
ffplay rtmp://localhost:1935/live/stream1Open Network Stream: rtmp://localhost:1935/live/stream1
- Primary ingest point for OBS, FFmpeg, GStreamer, and other RTMP encoders
- Low-latency distribution to RTMP-compatible players and CDNs
- Protocol bridging -- publish via RTMP and play via HLS, DASH, WebRTC, or any other protocol