#[derive(clap::Parser, Debug)]
pub struct CheckHlsArgs {
#[arg(short = 'i', long = "input")]
pub input: String,
#[arg(long = "json")]
pub json: bool,
}
#[derive(clap::Parser, Debug)]
pub struct CheckDashArgs {
#[arg(short = 'i', long = "input")]
pub input: String,
#[arg(long = "json")]
pub json: bool,
}
#[derive(clap::Parser, Debug)]
pub struct CheckArgs {
#[arg(short = 'i', long = "input")]
pub input: String,
#[arg(long = "json")]
pub json: bool,
}
#[derive(clap::Parser, Debug)]
pub struct WatchArgs {
#[arg(long = "udp")]
pub udp: String,
#[arg(long = "metrics-addr", default_value = "127.0.0.1:9090")]
pub metrics_addr: String,
}
#[derive(clap::Parser, Debug)]
#[command(
name = "media-doctor",
version,
about = "DVB/MPEG-TS diagnostics harness"
)]
#[non_exhaustive]
pub enum Cli {
Check(CheckArgs),
CheckHls(CheckHlsArgs),
CheckDash(CheckDashArgs),
Watch(WatchArgs),
}