View Source Membrane.RTP.HeaderGenerator (Membrane RTP plugin v0.16.0)

Given following RTP payloads and their minimal metadata, creates their proper header information, incrementing timestamps and sequence numbers for each packet. Header information then is put inside buffer's metadata under :rtp key.

Accepts the following metadata under :rtp key: :marker, :csrcs, :extensions. See Membrane.RTP.Header for their meaning and specifications.

element-options

Element options

Passed via struct Membrane.RTP.HeaderGenerator.t/0

  • ssrc

    RTP.ssrc_t()

    Required

  • payload_type

    RTP.payload_type_t()

    Required

  • clock_rate

    RTP.clock_rate_t()

    Required

  • alignment

    pos_integer()

    Default value: 1
    Number of bytes that each packet should be aligned to. Alignment is achieved by adding RTP padding.

pads

Pads

input

:input

Availability :always
Caps Membrane.RTP
Demand mode :auto
Demand unit :buffers
Direction :input
Mode :pull
Name :input

output

:output

Availability :always
Caps Membrane.RTP
Demand mode :auto
Demand unit :buffers
Direction :output
Mode :pull
Name :output

Link to this section Summary

Types

t()

Struct containing options for Membrane.RTP.HeaderGenerator

Functions

Returns pads descriptions for Membrane.RTP.HeaderGenerator

Returns description of options available for this module

Link to this section Types

@type t() :: %Membrane.RTP.HeaderGenerator{
  alignment: pos_integer(),
  clock_rate: Membrane.RTP.clock_rate_t(),
  payload_type: Membrane.RTP.payload_type_t(),
  ssrc: Membrane.RTP.ssrc_t()
}

Struct containing options for Membrane.RTP.HeaderGenerator

Link to this section Functions

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

Returns pads descriptions for Membrane.RTP.HeaderGenerator

@spec options() :: keyword()

Returns description of options available for this module