Remote start
A phone clamped behind a monitor shouldn't have to come down for someone to tap Start. While the app is open and idle, OBS can start the camera itself.
Why the app has to be open#
iOS runs the camera and LensLink's listener only while the app is on screen. Everything below exists because of that: the app announces standby when it's open and idle, and OBS takes it from there.
It's also why the Siri and Shortcuts paths open the app first, and why the phone holds off auto-lock while standby is armed — locking would suspend the listener. The Setup screen dims after a minute, in amber rather than green: armed, not live.
Remote start is on by default. Turn it off with Remote start from OBS in the app's Options.
The four ways to start#
Automatically, when the source connects#
Start the phone's camera automatically when it's ready is on by default: open the app and video appears, with no further input. It won't ping-pong with you either — OBS auto-starts only when the app has just become reachable, not after you pressed Stop.
From OBS#
Start camera on the phone and Stop camera on the phone in the source properties, whenever the app is connected.
From the browser panel#
The panel at
http://localhost:9980 shows Start camera while
the app is idle and a red Stop camera while it's live, each
with an Auto-start toggle beside it.
From Siri, Shortcuts or a URL#
- Siri (iOS 16+): "Hey Siri, start streaming with LensLink."
- Shortcuts: Start Camera Stream and Stop Camera Stream actions — useful in automations, such as starting when the phone connects to a particular charger.
- URL scheme:
lenslink://startandlenslink://stop. The iOS 15 path, and it works everywhere.
Siri phrases and sideloading don't mix. Re-signing rewrites
the bundle ID, which orphans the compiled phrase data — Siri refuses even
though the same action works from Shortcuts. Use TestFlight, or
lenslink://start. Also check the app has launched at least once
and that "Use with Siri" is on in Settings → Siri & Search →
LensLink.
Scene switching starts and stops it too#
With Disconnect when this source isn't shown anywhere, hiding the source stops the phone's camera and showing it starts it again. Combined with auto-start, the phone only encodes while it's on screen somewhere.
Scripting it#
The panel's endpoint is a plain HTTP POST:
curl -X POST http://localhost:9980/api/control \
-d '{"cmd":"start_stream"}'
curl -X POST http://localhost:9980/api/control \
-d '{"cmd":"stop_stream"}'
With more than one phone, add the source id from /api/sources as
?src=. Full API:
browser panel.
What to expect on the phone#
| App open, OBS not connected | Grey dot, "Not connected". |
| App open, OBS connected, camera idle | Amber dot, "OBS connected — ready". Standby: remote start armed. |
| Standby, untouched for a minute | The screen dims with an amber wake icon. Any tap wakes it; the listener never stops. |
| Started | Live screen, green dot, "Live". |
Standby dimming happens only when Idle view is Dim screen, and never while you're touching the screen or have a sheet open.