Skip to content

Repository files navigation

StreamWizard OBS Stats

A headless OBS Studio plugin that broadcasts performance and streaming stats over the existing obs-websocket server as vendor events. It has no UI/dock — it is on by default with sane defaults — and is built for headless/cloud OBS instances feeding a dashboard. The broadcast can be turned off (config file or a live vendor request), which also stops the per-frame profiler — see SETTINGS.md.

It emits two vendor events (vendor name streamwizard-stats) on a fixed interval (~1 s):

  • SourceStats — a per-scene/source/filter load tree (CPU/GPU/tick/render time, % of frame budget). Rebuilt fresh each tick from a live enumeration, so it keeps no per-source state.
  • OutputStats — instance health: streaming bitrate / dropped frames / congestion, recording + disk space, render & encoding lag, FPS, process CPU/memory, and session/encoder state.

See WEBSOCKET.md for the full message schema and a connection example.

Requirements

  • OBS Studio 28+ (bundled obs-websocket). If obs-websocket is absent the plugin logs a warning and does nothing.

Building

Out-of-tree build against installed OBS dev files (no Qt required — this plugin has no UI):

cmake --preset ubuntu-x86_64       # or windows-x64 / macos
cmake --build --preset ubuntu-x86_64

CI (GitHub Actions) builds Windows, macOS and Ubuntu artifacts on every push to main and cuts a release on a X.Y.Z tag.

License

GPL-2.0. Bundles OBS's util/source-profiler.h and the obs-websocket vendor API header (deps/obs-websocket-api.h).

About

Headless OBS plugin broadcasting source/scene/filter load and output stats over obs-websocket

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages