API Reference Membrane RTC Engine v0.11.0

modules

Modules

RTC Engine implementation.

An Endpoint responsible for converting incoming tracks to HLS playlist. This module requires the following plugins to be present in your mix.exs for H264 & OPUS input

Module representing audio mixer configuration for the HLS endpoint.

Module representing compositor configuration for the HLS endpoint.

Module representing Membrane.HTTPAdaptiveStream.SinkBin configuration for the HLS endpoint.

Module representing mixer configuration for the HLS endpoint.

Module representing function for updating video layout for the HLS stream.

Element responsible for sending stream format for specific track to HLS Endpoint and waiting for Endpoint to send updated layout to compositor element.

Behaviour defining how VideoLayout should change when new video track is added, updated or removed.

An Endpoint responsible for communicatiing with WebRTC peer.

Behavior defining a set of functions for managing connection allocations for TrackReceivers.

Message sent by ConnectionProber to TrackReceiver whenever new allocation is granted

Implementation of Membrane.RTC.Engine.Endpoint.WebRTC.ConnectionAllocator that probes the connection with RTP padding packets and grants allocations based on GCC estimates.

Module representing simulcast configuration for WebRTC endpoint.

Element responsible for handling WebRTC track.

Event for changing track variant that is currently being received.

Event sent whenever track variant was paused.

Event sent whenever track variant was resumed.

Event sent whenever Engine starts sending a new track variant.

An event indicating that the voice activity on the given track has changed.

Module describing messages RTC Engine can emit.

Message emitted when an endpoint crashes.

Message emitted when an endpoint wishes to message the business logic.

Defines list of metrics, that Reporter instance can aggregate by listening on events emitted in RTC Engine. Suggested Reporter implementation is Membrane.TelemetryMetrics.Reporter from membrane_telemetry_metrics. Membrane.TelemetryMetrics.Reporter started with metrics returned by metrics/1 function will be able to generate reports, that matches type Membrane.RTC.Engine.Metrics.rtc_engine_report() You can see usage example in (membrane_videoroom)[github.com/membraneframework/membrane_videoroom].

Struct describing a track notification sent to the instance of Membrane.RTC.Engine by Endpoints.

Module describing Peer.

Module representing media track.

Struct describing bitrate estimation.