mp4_atom/moov/trak/mdia/minf/
mod.rs1mod 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}