libobs-rs is a set of crates that provide safe Rust bindings to the OBS Studio C API (libobs).
- Raw FFI bindings to
obs.dll. - Generated using
bindgen. - Unsafe and difficult to use directly.
- Safe wrapper around
libobs. - Handles memory management, threading, and context.
- Provides a more Rust-idiomatic API.
- High-level abstraction.
- Simplifies common tasks like recording and streaming.
- Integrates
libobs-bootstrapperfor easy setup.
- Handles downloading and extracting OBS binaries.
- Manages versioning and updates.
- Initialization:
libobs-bootstrapperensures binaries exist.libobs-wrapperloadsobs.dlland initializes the core context. - Configuration: You create scenes, sources, and encoders using
libobs-simpleorlibobs-wrapper. - Execution:
libobsruns the video/audio pipeline in background threads. - Output: Encoded data is written to file or stream.