LensLink
LanguageEN

Remote start

A phone clamped behind a monitor shouldn't have to come down for someone to tap Start. Arm remote start on the phone, and OBS can start the camera itself.

Arming#

Opening the app never hands OBS the camera. Set up the shot, then tap Arm Remote Start on the Setup screen. Until you do, OBS can find and connect to the phone, but the app refuses to start the camera — the source says remote start isn't armed on the phone — and with auto-start on, OBS starts it the moment you arm.

Arming lasts until you tap Disarm Remote Start, stop a stream on the phone, or leave the app. A stop from OBS, such as hiding the source, keeps it armed, so OBS can start the camera again later.

For a phone that lives on a rig, turn on Arm remote start on open in the app's Options and the app arms itself every time it opens. It's off by default.

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, says whether it's armed, 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 armed — locking would suspend the listener. The Setup screen dims after a minute, in amber rather than green: armed, not live.

The four ways to start#

Automatically, when the source connects#

Start the phone's camera automatically when it's ready is on by default: arm the app and video appears, with no further input. It won't ping-pong with you either — pressing Stop on the phone disarms it, so OBS can't start it again until you arm it again.

From OBS#

Start camera on the phone and Stop camera on the phone in the source properties, whenever the app is connected. Start needs the app armed; Stop always works. After a Stop from OBS the camera stays off, even with auto-start on, until it's started again.

From the browser panel#

The panel at http://localhost:9980 shows Start camera while the armed app is idle (a reminder to arm it when it isn't) and a red Stop camera while it's live, each with an Auto-start toggle beside it.

From Siri, Shortcuts or a URL#

These run on the phone and start the camera directly, so they need no arming.

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 the App Store build, 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, not armedGrey dot, "Not connected". Nothing but you can start the camera.
Not armed, OBS connectedAmber dot, "OBS connected". OBS can see the phone but not start it; the card's Start button still works.
Armed, OBS not connectedAmber dot, "Armed".
Armed, OBS connected, camera idleAmber dot, "Ready". Standby.
Armed, untouched for a minuteThe screen dims with an amber wake icon. Any tap wakes it; the listener never stops.
StartedLive screen, green dot, "Live".

This dimming happens only when Idle view is Dim screen, and never while you're touching the screen or have a sheet open.