1use std::collections::HashMap;
3
4#[derive(Debug, Clone, Default)]
5pub struct ExifMeta {
6 pub camera: Option<String>,
7 pub lens: Option<String>,
8 pub gps_lat: Option<f64>,
9 pub gps_lon: Option<f64>,
10 pub extra: HashMap<String, serde_json::Value>,
11}
12
13#[derive(Debug, Clone, Default)]
14pub struct AudioMeta {
15 pub artist: Option<String>,
16 pub title: Option<String>,
17 pub album: Option<String>,
18}
19
20#[derive(Debug, Clone, Default)]
21pub struct PdfMeta {
22 pub page_count: Option<u32>,
23 pub author: Option<String>,
24 pub title: Option<String>,
25}
26
27#[derive(Debug, Clone, Default)]
28pub struct DocxMeta {
29 pub creator: Option<String>,
30 pub last_modified_by: Option<String>,
31 pub revision: Option<String>,
32}
33
34#[derive(Debug, Clone, Default)]
35pub struct VideoMeta {
36 pub codec_name: Option<String>,
37 pub width: Option<u32>,
38 pub height: Option<u32>,
39 pub duration_secs: Option<f64>,
40}