Skip to content

IDeviceStreamProbes

Interface in Oadm.Sdk.Devices · Oadm.Sdk.dll

Measuring video streams of managed devices on the server (the Load test): the host opens RTSP with the stored credentials (which never reach the plugin), receives the video and counts packets, frames and bytes; nothing is decoded and nothing is passed on. Offered to core plugins through ICorePluginContext.StreamProbes. SDK 0.6.0.

public interface IDeviceStreamProbes
Task<IReadOnlyList<StreamProbeSource>> ListSourcesAsync(Guid deviceId, CancellationToken ct)

The video sources of a device that are not disabled, each with its largest resolution, maximum frame rate and codecs. Throws DeviceStreamException when the device refuses or does not answer, KeyNotFoundException for an unknown device.

Task<IDeviceStreamProbe> OpenAsync(Guid deviceId, StreamProbeRequest request, CancellationToken ct)

Connects, authenticates and starts the stream of request. RTP over UDP when the request prefers it and the server reaches the device directly, else interleaved over TCP (devices at sites, a camera that refuses UDP); IDeviceStreamProbe.Transport says which. Throws DeviceStreamException when the device refuses or does not answer, KeyNotFoundException for an unknown device.