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

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

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

:input

Availability:always
Caps:any
Demand unit:buffers
Direction:input
Mode:pull
Name:input

:output

Availability:always
Caps:any
Direction:output
Mode:pull
Name:output

Link to this section Summary

Types

t()

Struct containing options for Membrane.SRTP.Decryptor

Functions

Returns pads descriptions for Membrane.SRTP.Decryptor

Returns description of options available for this module

Link to this section Types

Specs

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

Struct containing options for Membrane.SRTP.Decryptor

Link to this section Functions

Specs

membrane_pads() :: [{Membrane.Pad.name_t(), Membrane.Pad.description_t()}]

Returns pads descriptions for Membrane.SRTP.Decryptor

Specs

options() :: keyword()

Returns description of options available for this module