T4.7: PLI suppression at SFU — 200 ms dedup window per (room, stream_id)

This commit is contained in:
Siavash Sameni
2026-05-12 11:04:14 +04:00
parent 828fbea2ea
commit 36b0421d68
5 changed files with 259 additions and 27 deletions

View File

@@ -2028,20 +2028,29 @@ async fn main() -> anyhow::Result<()> {
(None, None)
};
room::run_participant(
let media_handle = tokio::spawn(room::run_participant(
room_mgr.clone(),
room_name,
room_name.clone(),
participant_id,
transport.clone(),
metrics.clone(),
&session_id_str,
session_id_str.clone(),
trunking_enabled,
debug_tap,
federation_tx,
federation_room_hash,
authenticated_fp.is_some(),
)
.await;
));
let signal_handle = tokio::spawn(room::run_participant_signals(
room_mgr.clone(),
room_name.clone(),
participant_id,
transport.clone(),
));
tokio::select! {
_ = media_handle => {},
_ = signal_handle => {},
}
// Participant disconnected — clean up presence + per-session metrics
if let Some(ref fp) = authenticated_fp {