IRL Streaming Setup: From Your Phone to OBS Step by Step
October 09, 2026 · 10 min read
Table of Contents
To set up an IRL stream, you send video from your phone or encoder over SRT or SRTLA to a server, pull that signal into OBS Studio as a media source, and let OBS stream to your platform. That way a short mobile network dropout no longer ends your stream, because OBS keeps sending to the platform while your phone reconnects.
This guide walks you through the whole chain: what you need, why sending straight to the platform is fragile, the three common setups, and six concrete steps from booking a server to your first test run.
What you need for an IRL streaming setup
- A smartphone or a hardware encoder. Anything that captures video and can send it over the internet works, for example a phone with a streaming app, an action camera or a dedicated encoder.
- A streaming app with SRT or SRTLA. Moblin (iOS) and IRL Pro (Android) are two well-known examples. Moblin lists RTMP(S), SRT, SRTLA, RIST and WHIP as supported protocols, and IRL Pro advertises SRTLA bonding over multiple connections.
- A mobile data plan. The upload from your phone to the server uses your own data volume. More on that below.
- A server that receives the stream. It acts as a fixed, publicly reachable meeting point between your phone and OBS.
- OBS Studio. Either on a PC at home or in the cloud. It decodes the incoming stream, adds scenes and overlays, and sends the final stream to Twitch, YouTube, Kick or any other platform.
Why sending straight to the platform ends your stream
If your phone streams directly to the platform, the platform sees one single connection. When your phone loses signal in a tunnel, a crowded street or a bad cell, the encoder stops delivering data. The platform then waits for a short time and ends the broadcast. On Twitch, for example, Disconnect Protection keeps your stream online for up to 90 seconds while a slate is shown, and if you do not reconnect in that time, your stream ends as normal. Other platforms have their own rules.
The fix is to put a stable connection between your phone and the platform. A server in a data center receives your stream. OBS pulls it from there and keeps streaming to the platform, even if your phone drops out for a moment. Your viewers see a fallback scene instead of an ended stream.
Three ways to get your phone stream to the platform
| Setup | How it works | Good to know |
|---|---|---|
| Direct to the platform | The app sends RTMP or SRT straight to the platform's ingest address. | Simplest setup. A longer dropout ends the stream, and you have no OBS scenes or overlays. |
| Server plus OBS at home | The app sends to a server. OBS on your home PC pulls the stream from the server and streams to the platform. | Full OBS features and failover. Needs a PC that runs during the whole stream. |
| Cloud OBS | The app sends to a server. OBS runs on a remote machine in a data center and streams to the platform from there. | No powerful hardware at home. You control OBS via Remote Desktop or a browser panel. |
For the second way, our IRL Endpoint Server receives RTMP, SRT and SRTLA and lets your local OBS Studio pull the stream. For the third, the IRL Broadcasting Server includes a full OBS Studio instance in the cloud. With the Endpoint Server you do not need to open ports on your home router, because your encoder and your OBS both connect outbound to the server. The steps below work for both server types, and differences are marked where they matter.
IRL streaming setup step by step
Step 1: Book a server and pick a region
Order the server and open the customer portal once your access is ready. For the IRL Endpoint Server we typically complete setup within 24 hours, for the IRL Broadcasting Server within 72 hours. In the portal you choose the region (USA, Europe, Asia or South America) and see the connection details for your app and for OBS.
Pick the region closest to where you will actually stream. A short path between your phone and the server means lower latency and fewer retransmissions. On the standard Endpoint plan you can switch endpoints at any time, which helps when you travel.
Step 2: Configure your streaming app
Every SRT or SRTLA app asks for the same few values. You find them in the customer portal, in the box with the RTMP and SRT details:
- Protocol: SRTLA if you want to bond several connections, otherwise SRT. RTMP also works, but SRT is the better choice for mobile networks.
- Server address and port: the values shown in the portal.
- Stream ID or key: identifies your stream on the server. For SRT, the stream ID has the form
publish:publish/<streamkey>.
Many apps take everything as one URL, and Moblin's documentation shows this form in its settings import example. With our servers, a combined SRT URL looks like this: srt://<server>:<port>?streamid=publish:publish/<streamkey>&latency=2000. Replace the placeholders with the values from your portal.
We recommend these settings in your app:
- SRT latency: 2 seconds. Depending on the app, you enter it as 2000 (milliseconds) or 2000000 (microseconds). Most apps have a separate field for it, otherwise append it to the URL as shown above. Lower values work too, but we deliberately recommend 2 seconds in favor of stability.
- Keyframe interval: 2 seconds.
- HEVC on Apple devices: if your app offers B-frames, turn them off.
Then set resolution, frame rate and bitrate to something your mobile connection holds reliably. A step-by-step walkthrough for the individual apps is in our separate guide on Moblin and IRL Pro.
Step 3: Add the stream as a source in OBS
With the IRL Endpoint Server, you pull the stream into OBS through the playback link from the customer portal. You add it as a Media Source:
- Add a Media Source to a scene.
- Uncheck Local File.
- Enter the playback link from the portal as Input.
- Enter mpegts as Input Format.
- In the transform options of the source, choose Fit to Screen.
Then open the properties of the source again and use our recommended settings:
- Network Buffering: 1 MB
- Reconnect Delay: 3 seconds
- Use hardware decoding when available: on
- Close file when inactive: on
The OBS SRT guide explains that SRT latency should be at least 2.5 times the round-trip time between encoder and server: more latency gives lost packets more time to be resent, but delays your picture. For our servers, the 2 seconds from step 2 are the recommendation and take precedence over the OBS default of 120 ms.
The IRL Broadcasting Server runs OBS Studio on the server instead. You open it via Remote Desktop from the customer portal, but only for adjustments and not during a running stream.
Step 4: Build scenes for Start, Live and Low
Create three scenes and give them the same names as in our scene switching tool, so OBS has something to show when the signal gets weak:
- Start: shown when the server receives no signal. Use a static image or looping clip with a message like "Connection lost, back in a moment", plus music or a muted audio mix. Do not include the phone source here, since it is not delivering anything.
- Live: the stable stream. This scene contains the source with the incoming stream, plus overlays, alerts, chat and whatever else you use.
- Low: shown when the bitrate falls below the threshold. It uses the same source, with a small banner such as "Weak connection". Viewers still see the picture, but know why it looks rough.
Keep the audio setup in mind: your microphone comes from the phone, so the Start scene should have its own background audio or be muted on purpose.
Step 5: Set up automatic scene switching
You will not watch OBS while you walk through a city, so let it switch scenes by itself. For this we developed our own scene switching tool. It switches to Low when the incoming bitrate falls below a threshold, to Start when the signal is gone, and back to Live once the connection is stable again.
- IRL Endpoint Server: You create and download the tool in the customer portal. It runs on your own PC next to OBS Studio, on Windows and macOS, and needs the WebSocket function of OBS to be enabled, which is built in since OBS 28.
- IRL Broadcasting Server: The tool runs on the server, with preconfigured scenes.
The default threshold is 800 kbit/s. You can adjust it, for example with the Twitch chat command !trigger 500. The right value depends on your hardware and your mobile network. The optional Twitch chatbot, available if you enter a Twitch channel when you order, also announces scene changes in your chat.
Automatic scene switching works with OBS Studio only, not with vMix, and Streamlabs OBS is not compatible. If you build your own setup instead, the Advanced Scene Switcher plugin for OBS can serve as an alternative that automates tasks with macros. Our separate guide on automatic scene switching covers the options in detail.
Step 6: Run a full test before you go out
- Start OBS, make sure the Live scene shows your phone source, and check the audio meters.
- Start a test stream to your platform. Use a private or unlisted test if your platform offers one, or keep the first public test short.
- Walk around outside. Watch bitrate and latency in your app and the picture in OBS.
- Force a dropout, for example with airplane mode for 20 seconds. Check that OBS switches to Start, that the platform stream stays online, and that OBS returns to Live after reconnecting.
- Check your data usage afterwards and compare it with your calculation below.
How much mobile data does an IRL stream use?
You can calculate the volume from the bitrate: kbit/s divided by 8 gives kilobytes per second, multiplied by 3600 gives kilobytes per hour. In short, kbit/s / 8 * 3600 = kB per hour, and divided by 1000 that is MB per hour.
| Video bitrate | Data per hour |
|---|---|
| 2,500 kbit/s | about 1,125 MB (1.1 GB) |
| 4,000 kbit/s | about 1,800 MB (1.8 GB) |
| 6,000 kbit/s | about 2,700 MB (2.7 GB) |
| 8,000 kbit/s | about 3,600 MB (3.6 GB) |
Audio, protocol overhead and retransmissions come on top, so plan with a margin. The "unlimited data" on our servers refers to the server side only. The connection from your phone to the server uses your own data plan. Our IRL streaming guide includes a tool to estimate your monthly consumption.
Bonding in short
With plain SRT your phone uses one network at a time. SRTLA adds link aggregation: it transports SRT traffic over several network links at once and balances it dynamically depending on network conditions, as described in the BELABOX SRTLA repository. The receiving side must support SRTLA, and both of our IRL servers accept SRTLA input. Moblin, for example, can use one cellular, one Wi-Fi and several Ethernet connections at the same time. Bonding helps when one network is weak, but it also means more total data use, since traffic is spread over several links.
Ready to go live?
With a server between your phone and OBS, a weak signal costs you a few seconds of picture, not your whole stream. Choose the IRL Broadcasting Server if you do not want to keep a PC running at home.
FAQ
How do I set up an IRL stream with OBS?
Send your phone stream over SRT or SRTLA to a server, add the playback link from the customer portal as a Media Source in OBS (Local File off, Input Format mpegts), build the scenes Start, Live and Low, and stream from OBS to your platform. Test the whole chain, including a forced dropout, before you leave home.
What is the difference between SRT and SRTLA?
SRT is a transport protocol for reliable, low-latency video over unreliable networks. SRTLA wraps SRT traffic and sends it over multiple network links, for example two SIM cards or SIM plus Wi-Fi, which is often called bonding. SRTLA needs a receiver that supports it.
Do I need a PC at home to stream IRL with OBS?
No. You can run OBS on a PC at home, or use a cloud OBS that runs in a data center and is controlled via Remote Desktop. The cloud option removes the need for powerful hardware and a permanently running PC at home.
How much data does an IRL stream use per hour?
Divide the bitrate in kbit/s by 8 and multiply by 3600 to get kilobytes per hour. At 4,000 kbit/s that is roughly 1.8 GB per hour for video alone. Audio and protocol overhead add a little more.
Do I need to open ports on my router?
Not with the IRL Endpoint Server. Your encoder and your OBS both connect outbound to the server, so no port forwarding or router changes are needed, and it also works behind CGNAT.