Expand description
DASH-IF Live Media Ingest (Interface-1) — sans-IO ingest session (increment P2a).
Mirrors multimux’s DASH pull ingest session for per-Representation
init bytes + the local_to_global track-id remap in fixed MPD order, but
driven by pushed objects (IngestObject) instead of a pull plan. One
Manifest announces the presentation; Headers register tracks; Segments
demux against header ++ segment and emit SessionEvent::Samples.
Cited against private/specs-md/dashif_live_media_ingest_v1.3.md
§6.2 items 1-3, 10, 11, 18, 19 and §5.3 items 2-3.
§Buffering rule (segments arriving before NewProgram)
A segment whose Representation already has a header but whose presentation
has not yet announced NewProgram (some other Representation is still
missing its header) is not dropped and not emitted: its samples are
buffered per-Representation (bounded at 64 samples per Representation; an
overflow is an error) and flushed in MPD order immediately after
NewProgram is queued. A segment for a Representation with no header at
all returns IngestError::SegmentWithoutHeader (412) regardless of the
presentation state. Nothing is buffered when the presentation is already
live.
Structs§
- Dashif
Ingest Config - The limits a DASH-IF ingest host enforces on what a publisher sends. The session carries them so the host reads one policy from one place.
- Dashif
Ingest Session - Sans-IO ingest session for one DASH-IF Interface-1 publishing point.
- Ingest
Object - One pushed ingest object: its classified kind (from
crate::ingest::classify) plus the raw body bytes. The session never re-parses paths. - Segment
Handle - Handle for a streaming (chunked) segment being fed via
DashifIngestSession::begin_segment/push_segment_bytes/finish_segment.
Enums§
- Session
Error - Error returned by
DashifIngestSession’sStageimplementation.
Constants§
- DEFAULT_
BUFFERED_ BUDGET_ BYTES - Default for
DashifIngestConfig::buffered_budget_bytes: 64 MiB. - DEFAULT_
MAX_ BUFFERED_ OBJECT_ BYTES - Default for
DashifIngestConfig::max_buffered_object_bytes: 8 MiB. - DEFAULT_
MAX_ OBJECT_ BYTES - Default for
DashifIngestConfig::max_object_bytes: 64 MiB.