async_mp4/
error.rs

1use std::string::FromUtf8Error;
2use thiserror::Error;
3use crate::r#type::BoxType;
4
5#[derive(Error, Debug)]
6pub enum MalformedBoxError {
7    #[error("Trying to read {actual} as {target}")]
8    ReadingWrongBox {
9        target: BoxType,
10        actual: BoxType
11    },
12    #[error("Malformed {0} Box: unknown version: {1}")]
13    UnknownVersion(BoxType, u8),
14    #[error("Malformed {0} Box: {1}")]
15    Custom(BoxType, String),
16    #[error("Unknown mp4box has unknown size that should read to end")]
17    UnknownSizeForUnknownBox,
18}
19#[derive(Error, Debug)]
20pub enum MP4Error {
21    #[error("IO Error")]
22    IO(#[from] std::io::Error),
23    #[error("Bad Utf8 String")]
24    BadUtf8(#[from] FromUtf8Error),
25    #[error("Malformed Box")]
26    MalformedBox(#[from] MalformedBoxError),
27    #[error("{0}")]
28    Custom(String),
29    #[error("unknown mp4 error")]
30    Unknown,
31}