#![forbid(unsafe_code)]
#![allow(
clippy::redundant_pub_crate,
reason = "crate-private helpers for mux/demux"
)]
use crate::error::Error;
use crate::types::Codec;
#[must_use]
const fn codec_enabled(codec: Codec) -> bool {
match codec {
Codec::Aac | Codec::Opus => cfg!(feature = "audio"),
Codec::H264 | Codec::Hevc | Codec::Av1 | Codec::Vp9 | Codec::WebVtt | Codec::Tx3g => {
cfg!(feature = "video")
}
}
}
pub(crate) const fn check_codec(codec: Codec) -> Result<(), Error> {
if codec_enabled(codec) {
Ok(())
} else {
Err(Error::InvalidPacket)
}
}