View Source Membrane.RTP.RTXParser (Membrane RTP plugin v0.21.0)

An element responsible for handling retransmission packets (rtx) defined in RFC 4588.

It parses RTX packet and recreates the lost packet by stripping rtx header from buffer's payload and updating rtp metadata. The changed fields are:

  • sequence_number - set to value transported in rtx header
  • payload_type - set via original_payload_type option
  • if rid_id and repaired_rid_id are provided, the former replaces the latter in a matching :extensions entry

element-options

Element options

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

  • original_payload_type

    any

    Required
    Payload type of original RTP stream that is retransmitted via the parsed RTX stream

  • repaired_rid_id

    RTP.Header.Extension.identifier_t()

    Default value: nil
    The numerical ID of an extension carrying repaired-rid that will be rewritten into rid

  • rid_id

    RTP.Header.Extension.identifier_t()

    Default value: nil
    The numerical ID of an extension carrying rid, will replace repaired_rid_id

pads

Pads

input

:input

Accepted formats:

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

output

:output

Accepted formats:

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

Link to this section Summary

Types

t()

Struct containing options for Membrane.RTP.RTXParser

Functions

Returns description of options available for this module

Link to this section Types

@type t() :: %Membrane.RTP.RTXParser{
  original_payload_type: any(),
  repaired_rid_id: Membrane.RTP.Header.Extension.identifier_t(),
  rid_id: Membrane.RTP.Header.Extension.identifier_t()
}

Struct containing options for Membrane.RTP.RTXParser

Link to this section Functions

@spec options() :: keyword()

Returns description of options available for this module