1mod boxes;
2mod entry;
3mod reader;
4pub(crate) mod remux;
5mod source;
6mod writer;
7
8pub use boxes::FourCc;
9pub use entry::{
10 AacConfig, AudioParams, AvcConfig, BitRate, CodecConfig, HevcConfig, NalArray, PcmConfig,
11 SampleEntry, VideoParams, VpcConfig,
12};
13pub use reader::{Edit, Reader, Sample, Track, TrackKind};
14pub use remux::{Cut, Snap, Span, copy_samples, plan, remux};
15pub use source::ByteSource;
16pub use writer::{Brand, FragmentedWriter, Options, TrackConfig, Writer, rotation_matrix};
17
18use crate::media::Error;
19
20pub(crate) fn truncated(what: &str) -> Error {
21 Error::Invalid(format!("truncated {what}"))
22}
23
24pub(crate) fn too_large(what: &str) -> Error {
25 Error::Invalid(format!("{what} exceeds the size limits"))
26}
27
28#[cfg(test)]
29mod malformed;
30#[cfg(test)]
31mod tests;