use std::time::Duration;
#[derive(Debug, Clone, Copy, Default)]
pub struct IntervalResult {
pub received: u64,
pub lost: u64,
pub bytes: usize,
pub jitter_ms: f64,
pub out_of_order: u64,
pub recommended_bitrate: u64,
pub time: Duration,
}
#[derive(Debug, Clone)]
pub enum ServerCommand {
Start,
Stop,
}
#[derive(Debug, Clone)]
pub enum ClientCommand {
Start,
Stop,
}
pub(crate) fn interval_per_packet(paylod: usize, bitrate: f64) -> Duration {
let bits_per_packet = (paylod * 8) as f64;
let packet_per_second = (bitrate / bits_per_packet).max(1.0);
Duration::from_secs_f64(1.0 / packet_per_second)
}