Install
Both halves are required: the plugin in OBS, the app on the phone. For just the steps that match your setup, use the setup guide.
Requirements#
- OBS Studio 32 or newer (Help → About). Older versions will not load the plugin.
- iOS or iPadOS 15 or later.
- For USB: iTunes on Windows (it supplies Apple's device driver), or the
usbmuxddaemon on Linux. macOS has it built in, and Wi-Fi needs none of it.
The plugin#
Restart OBS after any of these. Sources → + should then offer LensLink Camera and LensLink Screen.
Windows#
Run LensLink-installer-windows-x64.exe. It finds your OBS folder
and removes any pre-1.0 copy of the plugin.
Manual alternative: unzip lenslink-windows-x64.zip into
C:\Program Files\obs-studio\, merging the obs-plugins
and data folders.
macOS#
Open LensLink-installer-macos-universal.pkg. The package isn't
notarized, so the first time you need right-click → Open.
The build is universal — Apple silicon and Intel.
From the zip instead? Extract into
~/Library/Application Support/obs-studio/plugins/ and clear the
quarantine flag, or OBS will refuse to load it:
xattr -dr com.apple.quarantine \
~/Library/Application\ Support/obs-studio/plugins/lenslink.plugin
Linux#
tar -xzf lenslink-linux-x86_64.tar.gz -C ~/.config/obs-studio/plugins/
If the plugin doesn't appear and the log says
libavcodec.so.60: cannot open shared object file, you're on a
release before 1.8, whose tarball linked the build machine's FFmpeg. Update,
or build from source.
From source#
Full instructions:
obs-plugin/BUILDING.md.
On a Debian-family system:
sudo apt install cmake build-essential pkg-config \
libobs-dev libavcodec-dev libavutil-dev qt6-base-dev
cd obs-plugin
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
qt6-base-dev is optional: it adds the status-bar readout and the
dockable panel. Everything else builds without Qt.
The app#
TestFlight — recommended#
Join at testflight.apple.com/join/N7Rth6m3. Updates arrive on their own and Siri phrases work.
Sideloading#
Install LensLink-unsigned.ipa from the
latest release with
Sideloadly or similar.
Two Apple limits come with this route. A free Apple ID expires sideloaded apps after 7 days — re-install to refresh; settings are kept.
Re-signing also rewrites the bundle ID, which orphans the compiled Siri
phrase data: "Hey Siri, start streaming with LensLink" gets a generic
refusal even though the same action works from Shortcuts. Use
lenslink://start in a Shortcut, or use TestFlight.
Xcode#
No .xcodeproj is checked in; XcodeGen generates it.
brew install xcodegen
cd ios-app && xcodegen generate && open LensLink.xcodeproj
Signing and older-Xcode notes:
ios-app/BUILDING.md.
What differs by operating system#
The app, the protocol and every camera feature are identical wherever OBS runs. What changes is how the plugin reaches the phone over USB and how it gets decoded frames onto the GPU.
| Windows | macOS | Linux | |
|---|---|---|---|
| USB needs | iTunes, for the Apple Mobile Device Service | Nothing — built into the OS | The usbmuxd daemon. Most desktop distributions ship it for phone access; install the usbmuxd package if the source reports no device. |
| Hardware decoding | D3D11VA, then DXVA2 | VideoToolbox | VAAPI, then VDPAU |
| GPU pipeline needs | Windows 10 1909+ | macOS 13+ | OBS on EGL, plus a VAAPI driver |
| 10-bit on the GPU pipeline | Yes, as P010 | No — VideoToolbox converts to 8-bit itself, so HDR renders through the standard path | Yes, as P010 |
Everything else — resolutions, codecs, HDR and Apple Log capture, the green screen, lip sync, remote start, the browser panel — is decided on the phone or in shared code, and behaves the same on all three.
Updating#
Run the new plugin installer over the old one and restart OBS; the app
updates through TestFlight, or by re-installing the new .ipa.
The two halves negotiate a protocol version, so a slightly older app and a
newer plugin keep working — if a release ever needs both sides, its notes say
so.
Uninstalling#
- Windows: the installer's uninstall entry, or delete
obs-plugins\64bit\lenslink.dllanddata\obs-plugins\lenslink\. - macOS: delete
~/Library/Application Support/obs-studio/plugins/lenslink.plugin. - Linux: delete the extracted files from
~/.config/obs-studio/plugins/. - App: delete it as usual. Nothing is left on the computer.