Skip to main content

Module capabilities

Module capabilities 

Source
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§

EncoderCapabilities
Capability flags reported by libobs for an encoder type.
EncoderSelector
Filters and ranks discovered encoder descriptors without creating native objects.
EncoderTypeInfo
FrameRate
FrameRateOption
FrameRateRange
ListItem
ModuleInfo
ObsCapabilities
OutputCapabilities
Capability flags reported by libobs for an output type. Unknown future bits are retained.
OutputCompatibilityPlan
A concrete compatible choice of output and encoders from one capability snapshot.
OutputCompatibilityReport
OutputCompatibilityRequest
Requirements used when resolving an output graph from runtime-discovered capabilities.
OutputSelector
Filters discovered outputs by their libobs-declared protocols, codecs, and flags.
OutputTypeInfo
PropertyMetadata
ServiceTypeInfo
SourceTypeInfo

Enums§

ButtonType
CompatibilityIssue
EditableListType
EncoderKind
GroupType
ListFormat
ListType
ListValue
NumberControl
OutputRejectionReason
PathType
PropertyKind
SourceKind
TextInfoType
TextType