PrimarylessVideoSenderControl class
Creates PrimarylessVideoSenders for a session; reached through
Session.PrimarylessVideoSenders.
Namespace: Quaternar.Qaros · Assembly: Quaternar.Qaros.dll · Source: VideoSender.cs
public sealed class PrimarylessVideoSenderControl
Methods
CreateCpu
Creates a CPU video sender; PrimarylessVideoSenderOptions.GraphicsAPI must be GraphicsAPI.Cpu.
public Result<PrimarylessVideoSender> CreateCpu(PrimarylessVideoSenderOptions options)
Parameters
| Name | Type | Description |
|---|---|---|
options | PrimarylessVideoSenderOptions |
Returns: Result<PrimarylessVideoSender>
Exceptions
| Exception | Condition |
|---|---|
| ArgumentNullException | options or its layout is null. |
| ArgumentException | The graphics API is not GraphicsAPI.Cpu. |
| ArgumentOutOfRangeException | The reconnect timeout is not positive. |
Create
Creates a producer-owned logical video sender for
PrimarylessVideoSenderOptions.GraphicsAPI, with the matching
stream-parameter extension for a GPU API.
public Result<PrimarylessVideoSender> Create(PrimarylessVideoSenderOptions options)
Parameters
| Name | Type | Description |
|---|---|---|
options | PrimarylessVideoSenderOptions |
Returns: Result<PrimarylessVideoSender>
Exceptions
| Exception | Condition |
|---|---|
| ArgumentNullException | options or its layout is null. |
| ArgumentOutOfRangeException | The reconnect timeout is not positive (checked even with reconnects disabled) or does not fit in milliseconds. |
Remarks
Synchronous: it negotiates nothing and needs no receiver, and creates the frame
resources on the calling thread. The library generates the stream id; publish
PrimarylessVideoSender.GetStreamId (for example as
GuiPanelOptions.ContentStreamId) so receivers can request the stream.