Ratatoskr-receiver/plugin
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens 01e8df4072 Tell the producer what was lost
The return path. A frame still waiting is asked for by chunk after 64 ms,
then every 32 ms, three times, on the previous receiver's field-tested
cadence; a repair request never asks for a keyframe, since it exists so
that one is not needed. A frame given up on is reported late, and once
per 500 ms a keyframe is requested, because whatever depended on it
cannot be decoded either. Records are built by CultLib's
build_receiver_feedback and sent down the producer's own session on the
media channel; with nobody attached they are counted as not sent rather
than lost quietly.

The loopback test runs the whole path over real sockets: a producer
connects, loses one chunk, is asked for exactly that chunk with no
keyframe request, and when the frame ages out hears it was late and
that a keyframe is wanted.

  cargo test -p ratatoskr-core -> 28 passed

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-10 21:39:33 +02:00
..
include Tell the producer what was lost 2026-09-10 21:39:33 +02:00
tests Decode the envelope instead of handing over opaque bytes 2026-09-10 02:03:41 +02:00