Settings reference
Per-source properties live on the source, plugin-wide settings under Tools, and anything about the phone in the app.
Source properties (LensLink Camera)#
Right-click the source → Properties.
| Property | What it does |
|---|---|
| Status | Read-only: the current stage, plus device, format and measured latency while connected. Status table. |
| Connection | Wi-Fi — enter the phone's IP or USB cable. |
| Phone | Wi-Fi only. Pick a phone by name, or type its IP. |
| USB device | USB only. Auto, or a specific device so the same phone always feeds this source. |
| Low latency mode | Render the newest frame immediately rather than smoothing. On by default. |
| Hardware decoding (GPU) | Decode on the GPU, falling back to software automatically. On by default. |
| Disconnect when this source isn't shown anywhere | Hidden (eye off, or in no visible scene, preview or projector) means disconnected, so the phone stops encoding — saving battery and freeing it for another source. Reconnects when shown; with auto-start on, it also stops and starts the camera. |
| Start the phone's camera automatically when it's ready | Remote start, when the app is open and idle. On by default. |
| Start / Stop camera on the phone | Buttons: do it now, once. |
| Lip-sync audio source | Your real microphone — the one to align. |
| Automatically delay that audio source… | Applies the measured camera latency to that audio source. |
| Auto-calibrate | Measure the offset from the phone's mic reference. Needs Auto lip-sync reference on in the app; ignores the manual latency below. |
| Auto video delay for slow mics | Delays the video instead, for mics slower than the stream. |
| Audio device's own latency | Manual mode only. Subtracted from the delay. |
A LensLink Screen source has the connection, decoding and diagnostics properties only.
Plugin settings (Tools → LensLink Settings)#
One value for the whole plugin, never duplicated per source.
| Setting | What it does |
|---|---|
| GPU decode pipeline (beta) | Keeps decoded video on the graphics card. All sources, after an OBS restart; falls back per source where textures can't be shared. Details. |
| Browser control panel | Serves the panel on loopback. On by default. |
| Panel port | Default 9980. |
| Verbose diagnostics in the OBS log | Much more per-connection detail. On to reproduce a bug, off afterwards. |
| Dump received video to disk | Writes the raw stream so a decode problem can be reproduced off-device. |
| Record pipeline benchmark | A log summary every 5 seconds and one CSV sample per second, in the plugin's config folder. |
App options#
The Options row at the bottom of the Setup screen.
| Option | What it does |
|---|---|
| Remote start from OBS | Lets OBS start the camera while the app is open and idle. The phone stays awake waiting; locking it or leaving the app ends standby. |
| Idle view | What the Live screen becomes 10 seconds after your last touch. Standard keeps the controls; Clean feed shows only the picture; Dim screen blanks it, drops the brightness and shows the battery level — and alone also dims remote-start standby, a minute in. Any tap restores the controls. |
| Allow system video effects | Experimental: lets iOS lower the capture frame rate, which Control Center's effects may require. Applies when the camera next starts. |
| Tally light | Colors, priority order, per-status off switches, and which statuses pulse. See below. |
| Presets | Saved camera looks and the switch for applying them. Presets. |
| Send phone mic to OBS | Makes the phone the camera source's audio — a wireless mic. |
| Auto lip-sync reference | Sends the mic as a timing reference only; never heard. Mutually exclusive with the row above. |
| Camera diagnostics | Every format this device has, and which support Control Center effects, 10-bit HDR or Apple Log. Paste it into a bug report. |
| Check broadcast link | Verifies the screen-mirror extension is alive, independent of OBS. Run it while broadcasting. |
Tally light#
The colored border around the Live screen. The highest status that is true and has a color wins; setting one to Off lets lower ones show through.
| Status | Default | Meaning |
|---|---|---|
| On air | Red, 6 pt | In OBS's live output. |
| In preview | Amber, 4 pt | Visible in OBS, but not live. |
| Connection lost | Off | Streaming, but the link to OBS dropped. |
| Calibrating lip-sync | Off | Measuring or re-measuring. |
| Lip-sync locked | Off | Calibration locked on. |
| Low battery | Off | Low Power Mode, or 20% and below, while unplugged. |
Colors: red, amber, green, blue, purple, white, off. On air keeps the heaviest stroke whatever its color. Any lit status can pulse instead of holding steady (off by default), and Reduce Motion turns every pulse into a steady border of the same color — less motion, never less warning.
Where a setting is not#
- Resolution, frame rate, codec and color live on the phone, since only it knows what its cameras can do. Other surfaces can change them mid-stream, but the app owns the list.
- Global switches are never repeated per source. If it isn't on the source, it's under Tools → LensLink Settings.
- Anything settable from more than one place reads the same cached state, so the three surfaces never disagree.