NOALBS + StreamRelay: Auto Scene Switch on Signal Loss
StreamRelay· June 20, 2026· 6 min read
When you’re streaming live from out and about, your mobile signal can drop or get weak for a moment. When that happens, you want OBS (the free broadcasting software most streamers use) to flip to a “Be Right Back” screen on its own — and flip back to your live feed the moment the signal returns. NOALBS (short for Nginx OBS Automatic Live Bitrate Switcher) is a small free tool that does exactly that. This guide shows you how to set it up alongside a StreamRelay endpoint.
How this works (and what StreamRelay does vs what you run)
Let’s be clear about who does what, because it matters:
- StreamRelay is the relay — a server in the middle that takes in your video and passes it on to OBS. On top of that, it gives you a live stats feed: a constant read-out of how your stream is doing right now (your bitrate — roughly how much video data per second is flowing — and whether the connection is up or down).
- NOALBS is a separate program you run yourself on your own computer. It keeps checking those stats and tells OBS which scene to show. It talks to OBS through OBS WebSocket, which is just OBS’s built-in way of letting another app control it remotely.
So the switching brain lives on your side, not ours. StreamRelay simply hands you the data; you keep full control, and nothing locks you in. We deliberately do not run a scene-switching service of our own — that way your automation stays entirely yours, set up however you like.
What you need
- A StreamRelay endpoint and its stats URL. From €9.99/month.
- OBS with OBS WebSocket turned on (it’s built into OBS 28 and newer, so there’s nothing extra to install).
- NOALBS installed on your PC. The simplest setup is to run it on the same machine as OBS.
Step 1: Enable OBS WebSocket
In OBS, go to Tools → WebSocket Server Settings → Enable WebSocket server. Note down the port number and the password it shows you — NOALBS needs both to connect.
Step 2: Create your OBS scenes
A “scene” in OBS is just a saved screen layout you can switch between. Make at least these:
- Live — holds your relay Media Source, which is the incoming video from StreamRelay (OBS setup).
- BRB — a “be right back” / “reconnecting” holding screen.
- (Optional) Low bitrate — a fallback screen for when the signal is weak but not fully gone.
Step 3: Configure NOALBS
In the NOALBS config file, fill in:
- Your OBS WebSocket host, port, and password (the ones from Step 1) so NOALBS can reach OBS.
- The exact scene names you used for live / BRB / low-bitrate.
- Your StreamRelay stats endpoint — the stats URL NOALBS will keep checking.
- The bitrate thresholds — the cut-off numbers that decide when each scene kicks in (for example, drop below X and switch to BRB).
Here’s a complete config.json. The part that connects it to StreamRelay is the streamServer block — paste in the stats URL from your endpoint’s dashboard page (it already includes your token):
{
"user": { "id": null, "name": "NOALBSbot", "passwordHash": null },
"switcher": {
"bitrateSwitcherEnabled": true,
"onlySwitchWhenStreaming": false,
"instantlySwitchOnRecover": true,
"triggers": {
"low": 800, // switch to LOW scene below 800 kbps
"rtt": 2500, // switch to LOW above 2500 ms round-trip
"offline": 200 // treat as offline below 200 kbps
},
"switchingScenes": {
"normal": "Live", // your OBS scene names, exactly as written in OBS
"low": "Low bitrate",
"offline": "BRB"
},
"streamServers": [
{
"streamServer": {
"type": "Mediamtx",
"statsUrl": "https://app.stream-relay.de/api/noalbs/YOUR_ENDPOINT_ID/stats?token=YOUR_TOKEN"
},
"name": "StreamRelay",
"priority": 0,
"overrideScenes": null,
"dependsOn": null,
"enabled": true
}
]
},
"software": {
"type": "Obs",
"host": "localhost", // OBS WebSocket — from Step 1
"port": 4455,
"password": "YOUR_OBS_WEBSOCKET_PASSWORD"
}
}
💡 This config is only an example — adjust everything to your liking (scene names, thresholds, triggers). The one part that has to be exactly right is the
streamServerblock: keep"type": "Mediamtx"and paste in your realstatsUrlfrom your StreamRelay endpoint — that’s what connects NoALBS to StreamRelay. NoALBS expects strict JSON, so drop the//comments above when you save your real file.
Step 4: Run NOALBS and go live
Start NOALBS, then start sending video to your endpoint from your phone or encoder. When your bitrate falls below the threshold you set, or the connection drops entirely, NOALBS automatically switches OBS to your BRB screen. When the signal recovers, it switches you back to Live — all decided from StreamRelay’s stats, with no button-pressing from you.
A note on bonding
NOALBS handles scene switching only — not “bonding.” Bonding means combining several internet connections into one for a stronger feed. StreamRelay carries a single connection and does not merge multiple links together (so no SRTLA, no multi-SIM combining). NOALBS simply reacts to whatever that one connection is doing at any moment.
Why route through an EU relay
Your video travels phone/encoder → relay → OBS. You choose your relay location in the dashboard. Today that’s DE-CIX Frankfurt (one of the world’s biggest internet exchange points), with more EU locations on the way. Running the relay at your chosen EU location keeps the trip short, so your delay across the EU stays low. StreamRelay is GDPR-compliant (it follows EU data-protection rules), hosted in the EU, and your stream keys — the secret codes that let you publish — stay yours alone.
Frequently asked questions
Does StreamRelay switch scenes for me? No. StreamRelay provides the relay and stream stats. Scene switching runs in NOALBS on your own machine — you keep full control.
Can I get automatic BRB on disconnect? Yes, via self-hosted NOALBS reading StreamRelay’s stats and driving OBS over WebSocket. There’s no managed switching service to lock you in.
Keep reading
First time with OBS ingest? Read the OBS setup guide.