View Source Membrane.RTP.Header.Extension (Membrane RTP plugin v0.21.0)

Describes RTP Header Extension defined in RFC8285 and provides common functions for interacting with extensions placed in buffers.

 0                   1                   2
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
|  ID   |  len  |     data (len+1 bytes)   ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

Link to this section Summary

Link to this section Types

@type identifier_t() :: 1..14 | Membrane.RTP.SessionBin.rtp_extension_name_t()
@type t() :: %Membrane.RTP.Header.Extension{
  data: binary(),
  identifier: identifier_t()
}

Link to this section Functions

Link to this function

delete(buffer, identifier)

View Source
Link to this function

find(buffer, identifier)

View Source
@spec find(Membrane.Buffer.t(), identifier_t()) :: t() | nil
@spec pop(Membrane.Buffer.t(), identifier_t()) :: {t() | nil, Membrane.Buffer.t()}
@spec put(Membrane.Buffer.t(), t()) :: Membrane.Buffer.t()