View Source Membrane.RTP.RTSP.Decapsulator (Membrane RTP plugin v0.27.1)

This element provides functionality of decapsulating RTP Packets and redirecting RTSP messages received in the same TCP stream established with RTSP. The encapsulation is described in RFC 7826 Section 14.

Encapsulated RTP packets interleaved in the stream will have the following structure: ["$" = 36 :: 1 byte][Channel id :: 1 byte][Length :: 2 bytes][packet :: <Length> bytes]

RTSP Messages are not encapsulated this way, but can only be present between RTP packets.

Element options

Passed via struct Membrane.RTP.RTSP.Decapsulator.t/0

  • rtp_channel_id

    non_neg_integer()

    Default value: 0
    Channel identifier which encapsulated RTP packets will have.

  • rtsp_session

    pid() | nil

    Default value: nil
    PID of a RTSP Session (returned from Membrane.RTSP.start or Membrane.RTSP.start_link) that received RTSP responses will be forwarded to. If nil the responses will be discarded.

Pads

:input

Accepted formats:

%RemoteStream{type: :bytestream}
Direction::input
Availability::always
Flow control::auto

:output

Accepted formats:

%RemoteStream{type: :packetized, content_format: RTP}
Direction::output
Availability::always
Flow control::auto

Summary

Types

t()

Struct containing options for Membrane.RTP.RTSP.Decapsulator

Functions

Returns description of options available for this module

Types

@type t() :: %Membrane.RTP.RTSP.Decapsulator{
  rtp_channel_id: non_neg_integer(),
  rtsp_session: pid() | nil
}

Struct containing options for Membrane.RTP.RTSP.Decapsulator

Functions

@spec options() :: keyword()

Returns description of options available for this module