X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-mpeg%2Fsrc%2Fcodecs%2Fmod.rs;h=f6fb31cd6301e48f3331cffb41a59362fae4a1ab;hb=71d7f39706f0f5004820f8d1d36c87d5f9ec3e97;hp=09b42bdfe6212aa81e83b4484c5cfc3655238bab;hpb=ef0b99e68b6dd253074ed36e1dc665231e91b3b3;p=nihav.git diff --git a/nihav-mpeg/src/codecs/mod.rs b/nihav-mpeg/src/codecs/mod.rs index 09b42bd..f6fb31c 100644 --- a/nihav-mpeg/src/codecs/mod.rs +++ b/nihav-mpeg/src/codecs/mod.rs @@ -1,10 +1,17 @@ use nihav_core::codecs::*; +#[cfg(debug_assertions)] macro_rules! validate { ($a:expr) => { if !$a { println!("check failed at {}:{}", file!(), line!()); return Err(DecoderError::InvalidData); } }; } +#[cfg(not(debug_assertions))] +macro_rules! validate { + ($a:expr) => { if !$a { return Err(DecoderError::InvalidData); } }; +} #[cfg(feature="decoder_aac")] +#[allow(clippy::comparison_chain)] +#[allow(clippy::excessive_precision)] #[allow(clippy::manual_memcpy)] #[allow(clippy::useless_let_if_seq)] mod aac; @@ -15,6 +22,8 @@ mod mpegaudio; const DECODERS: &[DecoderInfo] = &[ #[cfg(feature="decoder_aac")] DecoderInfo { name: "aac", get_decoder: aac::get_decoder }, +#[cfg(feature="decoder_mpa")] + DecoderInfo { name: "mp2", get_decoder: mpegaudio::get_decoder_mp2 }, #[cfg(feature="decoder_mpa")] DecoderInfo { name: "mp3", get_decoder: mpegaudio::get_decoder_mp3 }, ]; @@ -25,3 +34,15 @@ pub fn mpeg_register_all_decoders(rd: &mut RegisteredDecoders) { rd.add_decoder(*decoder); } } + +const PACKETISERS: &[PacketiserInfo] = &[ +#[cfg(feature="decoder_mpa")] + PacketiserInfo { name: "mpa", get_packetiser: mpegaudio::get_packetiser }, +]; + +/// Registers all available packetisers provided by this crate. +pub fn mpeg_register_all_packetisers(rp: &mut RegisteredPacketisers) { + for packetiser in PACKETISERS.iter() { + rp.add_packetiser(*packetiser); + } +}