Program Display 0.1.0 — macOS preview
Pre-releaseCompatibility clarification: macOS 13 is the plugin's deployment target, not a tested-support claim. Version 0.1.0 has been runtime-tested only on macOS 27 and Apple Silicon. The current source build requires Xcode 26.5 or newer; Xcode 26.5 itself requires macOS 26.2 or newer.
Program Display remembers one deliberate relationship—OBS Program → physical display—and safely restores it after OBS restarts or the display reconnects.
This first release is a source-first macOS preview. It is aimed at operators who use a dedicated external display or capture device and want Program output restored without relying on OBS's numeric monitor-index persistence.
Highlights
- Compact native OBS dock for selecting and remembering one Program destination.
- Descriptive macOS display identity matching instead of saved monitor numbers.
- Automatic restoration after OBS restart and display reconnect.
- Fail-closed handling for missing, ambiguous, or insufficient display identity.
- Honest Output requested state: the public OBS API accepts the projector request but cannot confirm that the projector remains open.
- Optional, privacy-conscious display identity diagnostics.
Compatibility and validation
- Runtime-tested configuration: OBS Studio 32.2.2 on macOS 27, Apple Silicon, with an Elgato 4K S display/capture path.
- Runtime compatibility target: macOS 13 or later. macOS 13 through 26 have not been physically tested.
- The build is universal (
arm64andx86_64), but Intel runtime behaviour has not been physically tested. - Windows and Linux are not supported in this release.
Install
There is no signed and notarised one-click package in v0.1.0. Download the source archive and follow the source build and installation instructions.
Building requires Xcode 26.5 or newer, providing the macOS 26.5 SDK or newer, and CMake 3.28 or newer. Apple's Xcode system requirements list macOS 26.2 or newer as the host requirement for Xcode 26.5. The source-first release therefore does not currently provide a practical installation path for older macOS versions, even though the generated binary declares macOS 13 as its deployment target.
After installation, disable OBS Save projectors on exit, restart OBS, then open Docks → Program Display. The README explains why the plugin and OBS projector persistence must not operate together.
Important limitations
- OBS's public frontend API does not provide a projector handle that plugins can verify or close.
- Changing destination after output has been requested therefore requires restarting OBS.
- Program Display does not route audio; configure OBS monitoring or system audio separately.
- This preview should not be the only safeguard for a safety-critical or paid broadcast output.
See the complete changelog, architecture, and development disclosure for the full details.