easy_ffprobe/
data_stream.rs

1use std::collections::HashMap;
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
6/// Tags for the type data
7pub struct DataTags {
8    creation_time: Option<String>,
9    language: Option<String>,
10    #[serde(flatten)]
11    pub extra: HashMap<String, serde_json::Value>,
12}
13#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
14#[cfg_attr(feature = "__internal_deny_unknown_fields", serde(deny_unknown_fields))]
15/// Stream of type data
16pub struct DataStream {
17    /// Duration of the video stream in timestamp units.
18    pub duration_ts: u64,
19    /// Metadata tags associated with the video stream.
20    pub tags: DataTags,
21    /// Long name of the codec used for the video stream. eg. binary data
22    pub codec_long_name: Option<String>,
23    /// Short name of the codec used for the video stream.
24    /// Example: bin_data
25    pub codec_name: Option<String>,
26    #[cfg(feature = "__internal_deny_unknown_fields")]
27    codec_type: serde_json::Value,
28    #[cfg(feature = "__internal_deny_unknown_fields")]
29    start_time: Option<serde_json::Value>,
30    #[cfg(feature = "__internal_deny_unknown_fields")]
31    duration: Option<serde_json::Value>,
32}