krystv's picture
Upload 107 files
3374e90 verified
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct VideoResolution { pub width: u32, pub height: u32, pub hdr: bool, pub label: String }
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct VideoTrack {
pub resolution: VideoResolution, pub url: String,
pub mime_type: Option<String>, pub bitrate: Option<u64>, pub codecs: Option<String>,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct SubtitleTrack { pub label: String, pub url: String, pub language: Option<String>, pub format: Option<String> }
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct Server { pub id: String, pub label: String, pub url: String, pub priority: u8, pub extra: Vec<(String, String)> }
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct StreamSource {
pub id: String, pub label: String, pub format: String,
pub manifest_url: Option<String>, pub videos: Vec<VideoTrack>,
pub subtitles: Vec<SubtitleTrack>, pub headers: Vec<(String, String)>,
pub extra: Vec<(String, String)>,
}