Stream from FFmpeg
FFmpeg is ideal for automated or headless ingest: loop a file, restream a capture device or drive a scheduled channel. Push FLV over RTMP to your ingest URL and the relay engine takes it from there.
Step-by-step setup
Follow these steps in FFmpeg, then start one broadcast for every destination.
Install FFmpeg
Use your package manager (brew, apt, choco) or a static build from ffmpeg.org.
Build the output URL
Combine your RTMP server and stream key into one quoted FLV target.
Choose your input
Replace input.mp4 with a device, RTSP camera or playlist.
Run the command
FFmpeg connects and publishes; Stream Repeater relays to every enabled destination.
Your ingest details
Use the values from your own stream page. These examples show where each value belongs.
Keep your stream key private. It authorises publishing to your stream.
FFmpeg tips
A few practical details for a stable broadcast.
- Add -stream_loop -1 before -i to loop a file indefinitely.
- -g 60 sets a 2-second keyframe interval at 30 fps; use -g 120 for 60 fps.
- If the source is already suitable H.264/AAC, use -c copy to avoid re-encoding.
Recommended settings
A dependable starting point for most platforms and connections.
| Video codec | H.264 (x264 or hardware encoder) |
|---|---|
| Resolution | 1920×1080 (or 1280×720) |
| Frame rate | 30 or 60 fps |
| Video bitrate | 4,500–6,000 kbps |
| Keyframe interval | 2 seconds |
| Audio | AAC, 160 kbps, 44.1 kHz |
Other encoder guides
Using a different app? The connection details work the same way.
Ready to stream everywhere?
Connect FFmpeg once and let Stream Repeater handle every destination.
Get started Read the documentation