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