OBS Plugin (Experimental)

The obs-plugin/ tree contains an experimental OBS encoder plugin that connects to vtremoted and uses the same wire protocol as the FFmpeg client.

Scope

Current plugin scope is focused on protocol/client integration, encoder lifecycle validation, and smoke coverage.

Build

cd obs-plugin
cmake -S . -B build
cmake --build build

If libobs is not discoverable, set explicit OBS paths:

cmake -S . -B build \
  -DOBS_SOURCE_DIR=/path/to/obs-studio \
  -DOBS_BUILD_DIR=/path/to/obs-studio/build

Test

Run the protocol smoke test from repo root:

make test-obs-plugin

This runs:

If libobs dev headers/libs are unavailable, the integration runner skips locally. CI installs libobs and runs both paths.

CI

GitHub Actions includes an obs-plugin Linux job that installs libobs and runs both the smoke and libobs integration tests whenever OBS plugin or related integration files change.