Expand description
Router-native RTP model for the transport edge.
This module defines the typed domain model used to describe media streams, codecs, and their negotiated properties. It sits between the signaling/SDP layer and the raw packet loop, allowing the router to reason about media without parsing raw bytes or string-heavy protocol bags.
§RTP Packet Context
Most of the types defined here map directly to fields in the “RFC 3550” RTP header or its extensions:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+V: version (always 2)P: padding bitX: extension bit (if set, an extension header follows the SSRC)CC: “CSRC count”, the number of contributing source identifiers (0-15) that follow the SSRCM: “Marker” bit, used by profiles to mark significant events like the end of a video framePT: “Payload Type” (identifies the codec)SSRC: unique stream identifier
RFC references for this module:
- RTP base protocol: https://www.rfc-editor.org/rfc/rfc3550
- RTP A/V profile payload assignments: https://www.rfc-editor.org/rfc/rfc3551
- RTP header extension framework: https://www.rfc-editor.org/rfc/rfc8285
Structs§
- Header
Extension - RTP header-extension configuration (RFC 8285).
- Header
Extension Id - Local 4-bit identifier for a header extension (RFC 8285).
- Media
Capabilities - Full set of codec and extension capabilities for an RTP endpoint.
- Media
Codec Capability - Codec capability advertised by a router or endpoint.
- Media
Format - Negotiated codec format for a concrete media stream.
- Media
Stream - Description of one logical media stream (e.g. “camera”) at the router boundary.
- Mid
- Media identification (RFC 9143).
- Payload
Type - 7-bit RTP payload type value usable in RTP/RTCP muxed sessions
- Rid
- Restriction identifier (RFC 8851).
- Rtcp
Feedback - One negotiated RTCP feedback mechanism for a codec.
- Ssrc
- Synchronization source identifier for a media stream (RFC 3550).
- Stream
Binding - Routing bridge between a negotiated media format and a physical stream.
Enums§
- Codec
Setting - Typed codec parameter that affects interoperability.
- Rtcp
Feedback Kind - Categories of feedback messages sent over RTCP to control stream behavior.
Functions§
Type Aliases§
- Header
Extension Uri - Uniform resource identifier for a header extension (e.g. “urn:ietf:params:rtp-hdrext:ssrc-audio-level”)
- Media
Codec - Canonical name for a media codec (e.g. “opus”, “vp8”, “h264”)