LensLink

Troubleshooting

Find your symptom. Two attachments make almost any report solvable: the OBS log (Help → Log Files → View Current Log) and Options → Camera diagnostics from the app.

The sources do not appear in OBS#

The source is called "iOS Camera", or updates do not seem to apply#

A pre-1.0 copy (ios-camera-source.dll) is still installed and wins over the current one — the log says "Source 'ios_camera_source' already exists". Delete both of these and restart:

obs-plugins\64bit\ios-camera-source.dll
data\obs-plugins\ios-camera-source\

The current installer removes it automatically.

USB device not found (Windows)#

"Device found, but the LensLink app isn't reachable" means the cable and driver are fine: the app isn't in the foreground, or the phone is locked.

The phone does not appear in the Phone dropdown#

iOS requires the Local Network permission for the name broadcast: allow it when asked, or in Settings → Privacy & Security → Local Network → LensLink. Typing the IP works regardless.

Also check both devices are on the same network, and that it isn't a guest network or one with client isolation.

The app stops working after a week (sideloaded only)#

Free Apple IDs expire sideloaded apps every 7 days. Re-install to refresh (settings are kept), or switch to the TestFlight build, which doesn't expire.

Re-signing rewrites the bundle ID, orphaning the compiled phrase data: Siri refuses even though the same action works from Shortcuts. Use TestFlight, or a Shortcut with lenslink://start. Also check the app has launched once and that "Use with Siri" is on in Settings → Siri & Search → LensLink.

Control Center video effects are missing or greyed out#

These are iOS effects, toggled in Control Center while an app uses the camera. iOS offers them only on certain cameras and formats — typically the front camera, nothing above 1920×1440 — and on many iPhones the rear cameras get none.

Apple's Camera-app filters and Photographic Styles aren't available to any third-party app. Use OBS filters instead (right-click → Filters).

The screen broadcast will not connect#

No audio, or audio you cannot hear#

Two sources, one phone#

A phone feeds one source at a time; a second says the device is in use. The exception is Disconnect when this source isn't shown anywhere: a hidden source releases the phone, so sources in different scenes can share it.

Latency spikes on Wi-Fi when zoomed in#

Digital zoom magnifies sensor noise, which compresses badly and spikes the bitrate. Use the Telephoto lens, or switch to USB.

"Connected, but this OBS build can't decode the stream"#

That build has no HEVC decoder. Switch the app to H.264 — the same picture, more bandwidth.

The picture is solid green#

Almost always the virtual green screen working as designed on a subject it can no longer find: the phone paints everything that isn't you chroma green, so if segmentation loses you — you left the frame, or subject distance is set too tight — the whole frame is background. It survives restarting OBS and the phone, because the setting lives on the phone.

Turn Green screen off in the app to confirm. If you want it on, check that a chroma-key filter is still on the source — the plugin adds one the first time and never re-adds a filter you delete. The source's Status line says which case you're in.

It also costs the phone real work per frame, so a device that lags while streaming is worth testing with the green screen off.

The picture freezes or goes black when I switch apps on the phone#

Expected: iOS suspends camera capture for apps that aren't on screen. A screen broadcast is the exception and keeps running across apps.

Nothing here matches#

Tools → LensLink Settings → Copy a diagnostics report, then paste it into an issue on GitHub. It collects the versions, hardware, graphics device, settings and per-source connection state — including the last socket error, which distinguishes "the app wasn't running" from "the OS refused the connection". No video, audio or personal data.

Without the Qt UI, or from a script: curl localhost:9980/api/diagnostics. The report also goes to the OBS log, so Help → Log Files → Upload Current Log File carries it.

Worth adding: Options → Camera diagnostics from the app, and the OBS log with Verbose diagnostics on while you reproduce the problem once.