relax media stream

This commit is contained in:
Lukas Kreussel
2025-11-15 17:42:08 +01:00
parent 0438946821
commit 92d7a4a115

View File

@@ -381,20 +381,6 @@ pub struct MediaSource {
pub name: Option<String>,
pub is_remote: Option<bool>,
pub etag: Option<String>,
pub run_time_ticks: Option<i64>,
pub read_at_native_framerate: Option<bool>,
pub ignore_dts: Option<bool>,
pub ignore_index: Option<bool>,
pub gen_pts_input: Option<bool>,
pub supports_transcoding: Option<bool>,
pub supports_direct_stream: Option<bool>,
pub supports_direct_play: Option<bool>,
pub is_infinite_stream: Option<bool>,
pub use_most_compatible_transcoding_profile: Option<bool>,
pub requires_opening: Option<bool>,
pub requires_closing: Option<bool>,
pub requires_looping: Option<bool>,
pub supports_probing: Option<bool>,
pub video_type: Option<String>,
pub media_streams: Option<Vec<MediaStream>>,
pub media_attachments: Option<Vec<serde_json::Value>>,
@@ -406,7 +392,6 @@ pub struct MediaSource {
pub transcoding_container: Option<String>,
pub default_audio_stream_index: Option<i32>,
pub default_subtitle_stream_index: Option<i32>,
pub has_segments: Option<bool>,
#[serde(flatten)]
extra: HashMap<String, serde_json::Value>,
@@ -417,47 +402,22 @@ pub struct MediaSource {
#[derive(Debug, Serialize, Deserialize, Clone)]
pub struct MediaStream {
pub codec: Option<String>,
pub color_space: Option<String>,
pub color_transfer: Option<String>,
pub color_primaries: Option<String>,
pub dv_version_major: Option<i32>,
pub dv_version_minor: Option<i32>,
pub dv_profile: Option<i32>,
pub dv_level: Option<i32>,
pub rpu_present_flag: Option<i32>,
pub el_present_flag: Option<i32>,
pub bl_present_flag: Option<i32>,
pub dv_bl_signal_compatibility_id: Option<i32>,
pub time_base: Option<String>,
pub video_range: Option<String>,
pub video_range_type: Option<String>,
pub video_dovi_title: Option<String>,
pub audio_spatial_format: Option<String>,
pub display_title: Option<String>,
pub is_interlaced: Option<bool>,
pub is_avc: Option<bool>,
pub bit_rate: Option<i64>,
pub bit_depth: Option<i32>,
pub ref_frames: Option<i32>,
pub is_default: Option<bool>,
pub is_forced: Option<bool>,
pub is_hearing_impaired: Option<bool>,
pub height: Option<i32>,
pub width: Option<i32>,
pub average_frame_rate: Option<f64>,
pub real_frame_rate: Option<f64>,
pub reference_frame_rate: Option<f64>,
pub profile: Option<String>,
#[serde(rename = "Type")]
pub stream_type: Option<String>,
pub aspect_ratio: Option<String>,
pub index: i32,
pub is_external: Option<bool>,
pub is_text_subtitle_stream: Option<bool>,
pub supports_external_stream: Option<bool>,
pub pixel_format: Option<String>,
pub level: Option<i32>,
pub is_anamorphic: Option<bool>,
pub language: Option<String>,
pub title: Option<String>,
pub localized_default: Option<String>,
@@ -467,6 +427,9 @@ pub struct MediaStream {
pub sample_rate: Option<i32>,
pub delivery_url: Option<String>,
pub delivery_method: Option<String>,
#[serde(flatten)]
extra: HashMap<String, serde_json::Value>,
}
#[skip_serializing_none]