use clap::Parser;
use std::{net, path};
use url::Url;
#[derive(Parser, Clone, Debug)]
pub struct Config {
#[arg(long, default_value = "[::]:0")]
pub bind: net::SocketAddr,
#[arg(long, default_value = "24")]
pub fps: u8,
#[arg(long, default_value = "1500000")]
pub bitrate: u32,
#[arg(value_parser = moq_url)]
pub url: Url,
#[arg(long)]
pub name: String,
#[arg(long)]
pub tls_root: Vec<path::PathBuf>,
#[arg(long)]
pub tls_disable_verify: bool,
}
fn moq_url(s: &str) -> Result<Url, String> {
Url::try_from(s).map_err(|e| e.to_string())
}