How to Stream From Your Phone to OBS (Step by Step)
StreamRelay· May 26, 2026· 7 min read
Want your phone’s camera to show up live inside OBS on your home PC — even when you’re out in the city or in another country? You can’t send it straight there, but the fix is simple once you see how it works. This guide walks through the whole thing with StreamRelay — an EU-hosted relay at your chosen location (currently DE-CIX Frankfurt). No tricky router settings, no server to run, and your stream stays yours.
Why you can’t send your phone straight to OBS
Here’s the problem in plain terms. For your phone to reach OBS directly, your home PC would need a fixed public “address” on the internet that the phone can find from anywhere. Home connections don’t give you one — your router keeps the PC hidden (this is normal; it’s called NAT). You could try port forwarding (poking a hole through your router to let traffic in), but it’s fiddly, it breaks every time your internet provider changes your address, it exposes your home network, and on many mobile/cable connections it simply isn’t possible.
The fix: put a relay in the middle. Think of it like a parcel locker with a permanent address. Your phone drops the video off at the relay; OBS picks it up from there. Neither side has to find the other directly — both just connect out to the relay, so there’s no hole to open in your home network. The relay is the StreamRelay endpoint you’ll set up below.
What you’ll need
- A phone with an encoder (an app or device that turns your camera into a stream, e.g. Moblin, IRLPro or Larix) — Moblin on iOS, IRLPro on Android, or Larix Broadcaster on both.
- A StreamRelay endpoint — your personal ingest URL plus a stream key. From €9.99/month.
- OBS Studio on your PC.
- A reasonably stable internet connection on the phone (Wi-Fi or a single solid cellular signal). StreamRelay carries one connection — it does not bond multiple connections together.
Step 1: Create your relay endpoint
Sign up and you get a personal ingest URL for both protocols, for example:
# Publish URL — from your phone/encoder (carries your secret publish key):
RTMP: rtmp://<id>.ingest.stream-relay.eu:1935/live/<slug>?pass=<publishKey>
SRT: srt://<id>.ingest.stream-relay.eu:4000?streamid=publish:live/<slug>:_:<publishKey>
# Read URL — to pull into OBS / share for playback (carries the read token):
RTMP: rtmp://<id>.ingest.stream-relay.eu:1935/live/<slug>?pass=<readToken>
SRT: srt://<id>.ingest.stream-relay.eu:4000?streamid=read:live/<slug>:_:<readToken>
The dashboard hands you both URLs fully assembled (Endpoint → Connection details) — you never stitch the credential onto the URL yourself, so copy the whole string. Each endpoint has two separate credentials: the publish key (secret — it authorises sending, keep it private) and the read token (shareable — playback/relay only, it can’t take over your stream). The path always contains your endpoint slug, never the credential; the credential travels in the protocol’s own field (?pass= for RTMP, the last streamid segment for SRT).
You choose your relay location in the dashboard. Today that’s DE-CIX Frankfurt — one of Europe’s largest internet exchanges, so EU traffic stays low-latency — with more EU locations on the way. It’s also GDPR-compliant.
Step 2: Choose and configure a phone encoder app
Pick the app for your platform. Each has a dedicated walkthrough:
In all of them you create a new destination and paste the StreamRelay ingest URL and key.
Step 3: Enter your relay’s ingest URL and key on the phone
In the encoder app’s connection settings, choose Custom / SRT / RTMP, paste the StreamRelay URL, and add your key (RTMP) or stream id (SRT). Set the video bitrate to match your connection — see the bitrate notes below.
Step 4: Start the connection from your phone
Hit Go Live in the encoder app. The app now pushes a single RTMP or SRT stream to your StreamRelay endpoint. Nothing is public-facing on your home network yet — the phone is simply publishing to the relay.
Step 5: Add the relay as a source in OBS
On your PC, open OBS and add a source that pulls from the relay.
Using SRT in OBS (Media Source)
- Sources → + → Media Source → Create new.
- Untick Local File.
- In Input, paste your SRT read URL, e.g.
srt://<id>.ingest.stream-relay.eu:4000?streamid=read:live/<slug>:_:<readToken>. - Set Input Format to
mpegts. Lower the Network Buffering to taste for latency.
Using RTMP in OBS
Add a Media Source, untick Local File, and paste the RTMP pull URL for your endpoint. RTMP is the simplest paste-and-go option; SRT gives you lower latency and better recovery on shaky networks.
Full details in the OBS setup guide.
Step 6: Go live to Twitch or YouTube from OBS
Your phone feed is now a normal OBS source. Compose your scene, then stream from OBS to Twitch, YouTube, Kick or anywhere else as usual. OBS is doing the platform output; StreamRelay only carries the phone-to-OBS leg.
Recommended bitrate and latency settings
Bitrate is how much data your video uses per second — higher looks sharper but needs a stronger connection. The golden rule: set it for your weakest moment, not your best, or the stream will stutter when your signal dips. For 1080p (full HD) at 30fps over good 5G or Wi-Fi, 4,000–6,000 kbps is comfortable; on a weak signal, drop to 2,500–3,500 kbps.
Prefer SRT when your connection is shaky. SRT can quietly re-send the little bits of video that get lost on a wobbly mobile signal (it’s called ARQ), so a brief drop doesn’t freeze your scene the way it can with RTMP.
SRT or RTMP for phone-to-OBS?
Short version: RTMP is paste-and-go and universally supported; SRT is lower-latency and more resilient on cellular. Full breakdown in SRT vs RTMP.
Why route through Frankfurt (DE-CIX)
Latency is dominated by distance and routing. You pick your relay location in the dashboard, and today that’s DE-CIX Frankfurt, one of the largest internet exchanges in Europe — with more EU locations on the way — so EU streams take a short, well-peered path. It’s GDPR-compliant, EU-hosted, and your stream keys never leave your control — no US cloud in the middle.
Troubleshooting
- OBS shows nothing: confirm the phone is actually live (encoder shows “streaming”), and that the OBS pull URL matches your endpoint and key/stream-id.
- Stuttering: lower the phone bitrate; switch the encoder to SRT; raise OBS Network Buffering slightly.
- High latency: reduce OBS Network Buffering, and use SRT with a modest latency value rather than RTMP.
What this setup does not do
StreamRelay is a single-connection relay. It does not bond multiple internet connections (no SRTLA / multi-SIM aggregation). If you stream from a moving vehicle or through dead zones where you need several bonded modems, that’s a different class of product. For streaming from a phone, drone, encoder, or a second OBS over one solid connection, a single-connection relay is exactly right.
Frequently asked questions
Can I use my phone as a camera in OBS over the internet? Yes. Send RTMP or SRT from a phone encoder app to a relay, then add the relay as a Media Source in OBS. The phone and the PC do not need to be on the same network.
Do I need to open ports or run a server? No. The relay has the public address; your phone and OBS both connect outbound. No port forwarding, no Linux, no VPS.
Is RTMP or SRT better from a phone? RTMP is simplest and works everywhere; SRT is lower-latency and recovers better on unstable cellular. Use SRT when your signal varies.
Keep reading
New to IRL streaming? Start with the complete IRL streaming guide.