mp4_atom/moov/trak/mdia/minf/
mod.rs

1mod dinf;
2mod nmhd;
3mod smhd;
4mod stbl;
5mod sthd;
6mod vmhd;
7
8pub use dinf::*;
9pub use nmhd::*;
10pub use smhd::*;
11pub use stbl::*;
12pub use sthd::*;
13pub use vmhd::*;
14
15use crate::*;
16
17#[derive(Debug, Clone, PartialEq, Eq, Default)]
18#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
19pub struct Minf {
20    pub vmhd: Option<Vmhd>,
21    pub smhd: Option<Smhd>,
22    pub nmhd: Option<Nmhd>,
23    pub sthd: Option<Sthd>,
24    pub dinf: Dinf,
25    pub stbl: Stbl,
26}
27
28impl Atom for Minf {
29    const KIND: FourCC = FourCC::new(b"minf");
30
31    nested! {
32        required: [ Dinf, Stbl ],
33        optional: [ Vmhd, Smhd, Nmhd, Sthd ],
34        multiple: [],
35    }
36}