obs_projector_open_source
Open a projector to display a single source (input or scene) alone, routing that picture to a monitor or capture card without re-encoding.
Instructions
Open a projector showing ONE source on its own, rather than the whole mix. sourceName takes a scene name as readily as an input name - in OBS a scene is a source - so this projects either a single camera, screen capture or media input, or an entire scene composed as it would look on air.
What it is for: feeding one specific picture to hardware or to a person. A guest's camera on a monitor they can see, one screen share to a capture card, a scene routed to a second machine - all without re-encoding anything, because the projector is just the same frames drawn to a window.
A source projector shows that source ALONE. Overlays that live in a different scene are not in it: on the reference machine the HUD is its own scene added into the others, so projecting a camera source gives you the bare camera, and projecting a scene gives you that scene's own composite. If you want what the audience sees, that is the program mix, not a source - use obs_projector_open_mix.
Defaults to a WINDOW. obs-websocket cannot close or enumerate projectors - this window stays until someone closes it in the OBS UI.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| canvasUuid | No | UUID of the canvas the source belongs to, when disambiguating by name. | |
| sourceName | No | Name of the input OR scene to project. | |
| sourceUuid | No | UUID instead of a name. | |
| monitorIndex | No | Index from obs_monitor_list for fullscreen. Omit, or use -1, for a normal window. Mutually exclusive with projectorGeometry. | |
| projectorGeometry | No | Size and position for a windowed projector, in Qt's base64 geometry format. The protocol does not document how to construct one; omit it unless you are reusing a known value. |