Expand description
Runtime capability discovery and compatibility planning for the loaded OBS installation.
All enumeration and property inspection is executed on the OBS actor. Values returned from this module are owned Rust snapshots; no callback-borrowed or temporary libobs pointer escapes into safe downstream code.
Use ObsCapabilities when the application cares about capabilities such as “H.264”, “AAC” or
“RTMP” rather than a specific plugin ID. Selectors expose candidate lists, while
ObsCapabilities::best_output_plan resolves a complete output/encoder choice and reports
structured rejection reasons when no combination works.
Each source/output/encoder/service descriptor also exposes runtime property schemas and
form-ready settings snapshots through crate::settings. This is the plugin-generic path for
third-party OBS settings UIs.
Structs§
- Encoder
Capabilities - Capability flags reported by libobs for an encoder type.
- Encoder
Selector - Filters and ranks discovered encoder descriptors without creating native objects.
- Encoder
Type Info - Frame
Rate - Frame
Rate Option - Frame
Rate Range - List
Item - Module
Info - ObsCapabilities
- Output
Capabilities - Capability flags reported by libobs for an output type. Unknown future bits are retained.
- Output
Compatibility Plan - A concrete compatible choice of output and encoders from one capability snapshot.
- Output
Compatibility Report - Output
Compatibility Request - Requirements used when resolving an output graph from runtime-discovered capabilities.
- Output
Selector - Filters discovered outputs by their libobs-declared protocols, codecs, and flags.
- Output
Type Info - Property
Metadata - Service
Type Info - Source
Type Info