Table of Contents

Class ObsOutput

Namespace
OBSStudioClient.Model
Assembly
OBSClient.dll

An output of OBS Studio: the stream, the recording, the virtual camera or the replay buffer. It is the same object for as long as the ObsModel lives.

public class ObsOutput : INotifyPropertyChanged
Inheritance
ObsOutput
Implements
Derived
Inherited Members

Remarks

The Status is kept up to date with the events of OBS Studio, and is read again when the connection is restored, so IsActive answers at once, from any thread, without a request. An output does not belong to a scene collection: switching the scene collection does not change it, and the objects are not replaced.

StartAsync(CancellationToken), StopAsync(CancellationToken) and ToggleAsync(CancellationToken) are changes like the others (see SetEnabledAsync(bool, CancellationToken) for the order of changes and the wait).

Properties

IsActive

Gets whether the output is running: Status is Started, Reconnecting or Paused. An output that is starting or stopping is not.

Kind

Gets which output it is.

Model

Gets the model that the output belongs to.

Name

Gets the name of the output, as the messages call it: "stream", "recording", "virtual camera" or "replay buffer".

Status

Gets what the output is doing. It is Stopped until the model has read it.

Methods

StartAsync(CancellationToken)

Starts the output, and returns when OBS Studio has begun to start it.

StopAsync(CancellationToken)

Stops the output, and returns when OBS Studio has begun to stop it.

ToString()

Returns a string that represents the current object.

ToggleAsync(CancellationToken)

Starts the output when it is not running, and stops it when it is, and returns when OBS Studio has begun.

Events

PropertyChanged

Occurs when a property value changes.