Membrane Element: RTP v0.2.0 Membrane.Element.RTP.Header View Source
Describes RTP Header defined in RFC3550
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|V=2|P|X| CC |M| PT | sequence number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| timestamp |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| synchronization source (SSRC) identifier |
+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
| contributing source (CSRC) identifiers |
| .... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Link to this section Summary
Types
If the extension bit is set, the fixed header MUST be followed by exactly one header extension
The interpretation of the marker is defined by a profile
Indicates whether a packet contains additional padding at the end. The last octet of the padding contains a count of padding octets that should be ignored, including itself
This field identifies the version of RTP. The version defined by this specification is 2
Link to this section Types
extension()
View Source
extension() :: boolean()
extension() :: boolean()
If the extension bit is set, the fixed header MUST be followed by exactly one header extension
marker()
View Source
marker() :: boolean()
marker() :: boolean()
The interpretation of the marker is defined by a profile
padding()
View Source
padding() :: boolean()
padding() :: boolean()
Indicates whether a packet contains additional padding at the end. The last octet of the padding contains a count of padding octets that should be ignored, including itself.
t()
View Source
t() :: %Membrane.Element.RTP.Header{
csrc_count: 0..15,
csrcs: [non_neg_integer()],
extension_header: extension(),
extension_header_data: Membrane.Element.RTP.HeaderExtension.t() | nil,
marker: marker(),
padding: padding(),
payload_type: Membrane.Caps.RTP.raw_payload_type(),
sequence_number: non_neg_integer(),
ssrc: non_neg_integer(),
timestamp: non_neg_integer(),
version: version()
}
t() :: %Membrane.Element.RTP.Header{ csrc_count: 0..15, csrcs: [non_neg_integer()], extension_header: extension(), extension_header_data: Membrane.Element.RTP.HeaderExtension.t() | nil, marker: marker(), padding: padding(), payload_type: Membrane.Caps.RTP.raw_payload_type(), sequence_number: non_neg_integer(), ssrc: non_neg_integer(), timestamp: non_neg_integer(), version: version() }
version()
View Source
version() :: 0..2
version() :: 0..2
This field identifies the version of RTP. The version defined by this specification is 2.