Skip to main content

Module recovery

Module recovery 

Source
Expand description

Decoder readiness effects and keyframe dispatch across RTC workers.

RouteTable owns decoder gates and source/RID retry state. apply_src_decoder_ready dispatches refresh feedback after packet-loop state commits gates and consumer RTX invalidation. Packet liveness must already be recorded before applying decoder readiness.

The coordinator resolves source ownership before producer or remote dispatch. For remote sources the consumer worker keeps retry ownership:

consumer worker: Track / Retry
                      |
               RemoteSourceControl
                      |
producer worker: Forward -> publisher interval -> producer StreamRx

worker_request_remote_kf revalidates relay activity and producer ownership without arming another retry loop. The producer worker merges requests during its dispatch interval. Due retries recheck source demand and the current feedback path. A full remote queue retains pending retry state while a closed channel removes it.

Re-exportsยง

pub use decoder_readiness::apply_src_decoder_ready;
pub use feedback::PendingKeyframeRequest;
pub use feedback::drain_due_kf_retries;
pub use feedback::flush_pending_kf_reqs_at;
pub use keyframe::drain_due_publisher_kf;
pub use keyframe::request_consumer_feedback_kf;
pub use keyframe::request_source_recovery_kf;
pub use keyframe::retry_source_kf;
pub use keyframe::worker_request_consumer_kf;
pub use keyframe::worker_request_remote_kf;
pub use keyframe::worker_request_resumed_video_kf;

Modulesยง

decoder_readiness ๐Ÿ”’
Decoder-safe packet-gate transitions.
feedback ๐Ÿ”’
route-level keyframe feedback handling
keyframe ๐Ÿ”’
Keyframe dispatch for local and relayed sources.