Show / Hide Table of Contents

    Namespace Microsoft.MixedReality.WebRTC

    Classes

    DataChannel

    Encapsulates a data channel of a peer connection.

    A data channel is a pipe allowing to send and receive arbitrary data to the remote peer. Data channels are based on DTLS-SRTP, and are therefore secure (encrypted). Exact security guarantees are provided by the underlying WebRTC core implementation and the WebRTC standard itself.

    https://tools.ietf.org/wg/rtcweb/

    An instance of DataChannel is created by calling AddDataChannelAsync(String, Boolean, Boolean) or one of its variants. DataChannel cannot be instantiated directly.

    I420VideoFrameStorage

    Storage for a video frame encoded in I420 format.

    IceServer

    ICE server configuration (STUN and/or TURN).

    MovingAverage

    Utility to manage a moving average of a time series.

    PeerConnection

    The WebRTC peer connection object is the entry point to using WebRTC.

    PeerConnection.LocalVideoTrackSettings

    Settings for adding a local video track.

    PeerConnectionConfiguration

    Configuration to initialize a PeerConnection.

    TaskExtensions

    Collection of extension methods for Task.

    VideoFrameQueue<T>

    Small queue of video frames received from a source and pending delivery to a sink. Used as temporary buffer between the WebRTC callback (push model) and the video player rendering (pull model). This also handles dropping frames when the source is faster than the sink, by limiting the maximum queue length.

    Structs

    ARGBVideoFrame

    Single video frame encoded in ARGB interleaved format (32 bits per pixel).

    AudioFrame

    Single raw uncompressed audio frame.

    I420AVideoFrame

    Single video frame encoded in I420A format (triplanar YUV + alpha, 18 bits per pixel). See e.g. https://wiki.videolan.org/YUV/#I420 for details.

    VideoCaptureDevice

    Identifier for a video capture device.

    VideoCaptureFormat

    Capture format for a video track.

    Interfaces

    IVideoFrameQueue

    Interface for a queue of video frames.

    IVideoFrameStorage

    Interface for a storage of a single video frame.

    Enums

    BundlePolicy

    Bundle policy. See https://www.w3.org/TR/webrtc/#rtcbundlepolicy-enum.

    DataChannel.ChannelState

    Connecting state of a data channel, when adding it to a peer connection or removing it from a peer connection.

    IceConnectionState

    State of an ICE connection.

    IceTransportType

    Type of ICE candidates offered to the remote peer.

    PeerConnection.FrameHeightRoundMode

    Frame height round mode.

    PeerConnection.TrackKind

    Kind of WebRTC track.

    PeerConnection.VideoProfileKind

    Kind of video profile. This corresponds to the enum of the API.

    SdpSemantic

    SDP semantic used for (re)negotiating a peer connection.

    Delegates

    ARGBVideoFrameDelegate

    Delegate used for events when an ARGB-encoded video frame has been produced and is ready for consumption.

    AudioFrameDelegate

    Delegate used for events when an audio frame has been produced and is ready for consumption.

    DataChannel.BufferingChangedDelegate

    Delegate for the BufferingChanged event.

    I420VideoFrameDelegate

    Delegate used for events when an I420-encoded video frame has been produced and is ready for consumption.

    PeerConnection.DataChannelAddedDelegate

    Delegate for DataChannelAdded event.

    PeerConnection.DataChannelRemovedDelegate

    Delegate for DataChannelRemoved event.

    PeerConnection.IceCandidateReadytoSendDelegate

    Delegate for the IceCandidateReadytoSend event.

    PeerConnection.IceStateChangedDelegate

    Delegate for the IceStateChanged event.

    PeerConnection.LocalSdpReadyToSendDelegate

    Delegate for LocalSdpReadytoSend event.

    Back to top Generated by DocFX