ingest and srt only.Expand description
Native SRT ingest handler (feature srt).
Accepts SRT (Secure Reliable Transport) connections in listener mode,
parses the control/data packet stream, and extracts the encapsulated
MPEG-TS payload into elementary media frames that flow onto the engine bus
through the standard InboundProtocol seam.
§Pipeline
UDP datagram ─▶ SrtPacket::parse ─▶ data payload ─▶ TsDemuxer ─▶ AccessUnit
│ │
└─ handshake (induction/conclusion) ▼
PublishSessionThe SRT packet header (SRT RFC, draft-sharabayko-srt) and the
SrtHandshake induction/conclusion exchange are parsed here; the MPEG-TS
bytes ride in SRT data packets and are demuxed by TsDemuxer.
§Scope (per the v0.1.3 design decision)
Unencrypted transport only. SRT’s AES-CTR key exchange (the KMREQ/KMRSP
handshake extensions) requires a crypto backend and is intentionally out of
scope for the #![forbid(unsafe_code)], dependency-light kernel — an
encrypted feed is rejected at handshake. Basic ACK/NAK keep-alive is handled;
a full ARQ retransmission window is not modeled (the listener tolerates loss
and re-syncs on the next TS/PES boundary).
Structs§
- SrtHandler
- SRT ingest worker — binds a UDP listener and demuxes one MPEG-TS feed.
- SrtHandshake
- The fields of an SRT handshake this listener inspects.
- TsDemuxer
- Stateful MPEG-TS demuxer. Feed it TS bytes with
push. - TsPayload
- One reassembled access unit demuxed from the TS stream.
Enums§
- Control
Type - SRT control packet types (the 15-bit type field of a control header).
- Handshake
Type - SRT handshake request type (the 32-bit
Handshake Typefield). - SrtPacket
- A parsed SRT packet — its header fields and, for data packets, the payload offset (always 16, the fixed header length).
- TsTrack
Kind - Whether a demuxed
TsPayloadis a video or audio access unit.