9. Bandwidth Requirements
This page covers network bandwidth requirements for streaming to multiple services simultaneously.
Stream Relays Use Significant Bandwidth
Unlike single-destination streaming, a relay sends your stream to multiple services at once. Your total upload bandwidth must support the sum of all enabled destinations. This can easily exceed typical residential upload speeds.
9.1 Understanding Bandwidth Usage
When streaming through docker-rtmp-multistream, you send:
- One stream to the relay (your source stream from OBS/streaming software)
- Multiple streams from the relay (one to each enabled service)
Your upload connection must handle all outgoing streams simultaneously.
9.2 Bandwidth Calculation
Total upload bandwidth = Sum of all enabled service streams:
9.2.1 Example Calculation
Scenario: Streaming to YouTube and Twitch
- Source stream (OBS → relay): 20 Mbps
- YouTube (relay → YouTube): 20 Mbps (passthrough - uses full source bitrate)
- Twitch (relay → Twitch): 4.5 Mbps (transcoded - uses configured lower bitrate)
Total upload needed: ~44.5 Mbps (20 + 20 + 4.5)
Service Bandwidth Patterns
- YouTube: Uses passthrough (full source bandwidth) - see YouTube Configuration
- Twitch: Partners use passthrough (full source). Non-partners use transcoded stream (configurable, typically lower) - see Twitch Configuration
- Archive: Local disk I/O only (no network bandwidth)
9.3 Testing Your Connection
Before multi-streaming, test your upload speed:
- Visit Speedtest.net
- Run the test and note your upload speed
- Compare against your calculated total bandwidth requirement
Upload vs Download
Your upload speed is typically much lower than download speed. Most residential connections have asymmetric bandwidth (e.g., 100 Mbps download / 10 Mbps upload).
9.4 Optimization Strategies
If your upload bandwidth is limited, consider these approaches:
9.4.1 1. Reduce Source Bitrate
Lower the bitrate in your streaming software (OBS, etc.). This reduces bandwidth for all services.
Tradeoff: Lower source quality affects all destinations.
9.4.2 2. Use Service-Specific Transcoding
Configure services like Twitch to use lower transcoded settings rather than passthrough.
Tradeoff: Additional CPU usage for encoding.
9.4.3 3. Selective Service Enable
Only enable services that fit within your bandwidth constraints. Disable less critical destinations.
9.4.4 4. Content-Aware Settings
Adjust settings based on your content type (see Quality Optimization):
- High motion content: Lower resolution, maintain frame rate
- High detail content: Lower frame rate, maintain resolution
9.5 See Also
- Quality Optimization - Stream quality tuning strategies
- Hardware Requirements - CPU considerations for encoding
- Twitch Configuration - Twitch bandwidth and transcoding
- YouTube Configuration - YouTube bandwidth requirements