2026-04-25 22:25:24 -03:00
|
|
|
use tokio::time::Instant;
|
|
|
|
|
|
|
|
|
|
#[derive(Debug, Default)]
|
|
|
|
|
pub(super) struct UpstreamClockState {
|
|
|
|
|
pub session_id: u64,
|
|
|
|
|
pub active_camera_generation: Option<u64>,
|
|
|
|
|
pub active_microphone_generation: Option<u64>,
|
|
|
|
|
pub first_camera_remote_pts_us: Option<u64>,
|
|
|
|
|
pub first_microphone_remote_pts_us: Option<u64>,
|
|
|
|
|
pub session_base_remote_pts_us: Option<u64>,
|
|
|
|
|
pub last_video_local_pts_us: Option<u64>,
|
|
|
|
|
pub last_audio_local_pts_us: Option<u64>,
|
|
|
|
|
pub camera_packet_count: u64,
|
|
|
|
|
pub microphone_packet_count: u64,
|
|
|
|
|
pub startup_anchor_logged: bool,
|
|
|
|
|
pub playout_epoch: Option<Instant>,
|
|
|
|
|
pub pairing_anchor_deadline: Option<Instant>,
|
2026-04-26 01:02:27 -03:00
|
|
|
pub catastrophic_reanchor_done: bool,
|
2026-04-25 22:25:24 -03:00
|
|
|
}
|