View Source Membrane.SRTP.Decryptor (Membrane RTP plugin v0.21.0)

Converts SRTP packets to plain RTP.

Decryptor expects that buffers passed to handle_process/4 have already parsed headers in the metadata field as they contain information about header length. The header length is needed to avoid parsing the header twice in case of any elements preceding the decryptor needed the information to e.g. drop the packet before reaching the decryptor. ExLibSRTP expects a valid SRTP packet containing the header, after decryption, the payload binary again includes the header. The header's length simply allows stripping the header without any additional parsing.

Requires adding srtp dependency to work.

element-options

Element options

Passed via struct Membrane.SRTP.Decryptor.t/0

  • policies

    [ExLibSRTP.Policy.t()]

    Required
    List of SRTP policies to use for decrypting packets. See ExLibSRTP.Policy.t/0 for details.

pads

Pads

input

:input

Accepted formats:

_any
Direction::input
Availability::always
Mode::pull
Demand mode::auto
Demand unit::buffers

output

:output

Accepted formats:

_any
Direction::output
Availability::always
Mode::pull
Demand mode::auto

Link to this section Summary

Types

t()

Struct containing options for Membrane.SRTP.Decryptor

Functions

Returns description of options available for this module

Link to this section Types

@type t() :: %Membrane.SRTP.Decryptor{policies: [ExLibSRTP.Policy.t()]}

Struct containing options for Membrane.SRTP.Decryptor

Link to this section Functions

@spec options() :: keyword()

Returns description of options available for this module