using System.Text.Json.Serialization; namespace Manager.YouTube.Models.Innertube; public class StreamingFormat { [JsonPropertyName("itag")] public int Itag { get; set; } [JsonPropertyName("url")] public string? Url { get; set; } [JsonPropertyName("mimeType")] public string MimeType { get; set; } = ""; [JsonPropertyName("bitrate")] public uint Bitrate { get; set; } [JsonPropertyName("width")] public uint? Width { get; set; } [JsonPropertyName("height")] public uint? Height { get; set; } [JsonPropertyName("initRange")] public Range? InitRange { get; set; } [JsonPropertyName("indexRange")] public Range? IndexRange { get; set; } [JsonPropertyName("lastModified")] public long LastModified { get; set; } [JsonPropertyName("contentLength")] public long ContentLength { get; set; } [JsonPropertyName("quality")] public string Quality { get; set; } = ""; [JsonPropertyName("xtags")] public string? Xtags { get; set; } [JsonPropertyName("fps")] public uint Fps { get; set; } [JsonPropertyName("qualityLabel")] public string QualityLabel { get; set; } = ""; [JsonPropertyName("projectionType")] public string ProjectionType { get; set; } = ""; [JsonPropertyName("averagebitrate")] public uint? AverageBitrate { get; set; } [JsonPropertyName("highReplication")] public bool? HighReplication { get; set; } [JsonPropertyName("colorInfo")] public ColorInfo? ColorInfo { get; set; } [JsonPropertyName("audioQuality")] public string? AudioQuality { get; set; } = ""; [JsonPropertyName("approxDurationMs")] public long ApproxDurationMs { get; set; } [JsonPropertyName("audioSampleRate")] public int? AudioSampleRate { get; set; } [JsonPropertyName("audioChannels")] public int? AudioChannels { get; set; } [JsonPropertyName("loudnessDb")] public double? LoudnessDb { get; set; } [JsonPropertyName("isDrc")] public bool? IsDrc { get; set; } [JsonPropertyName("signatureCipher")] public string? SignatureCipher { get; set; } [JsonPropertyName("qualityOrdinal")] public string QualityOrdinal { get; set; } = ""; }