X-Git-Url: https://git.nihav.org/?p=nihav.git;a=blobdiff_plain;f=nihav-mpeg%2Fsrc%2Fcodecs%2Fmod.rs;h=d02d7d8144327f59836a6f404308742b29f761ba;hp=eb5855305479fa5e4d7fbfb6423cca499bbaedbd;hb=9f9a08fb5b882313f5d1ff4f909d4836f008b660;hpb=16cca4d3a7a7505ae31a7469b3547c52650fd194 diff --git a/nihav-mpeg/src/codecs/mod.rs b/nihav-mpeg/src/codecs/mod.rs index eb58553..d02d7d8 100644 --- a/nihav-mpeg/src/codecs/mod.rs +++ b/nihav-mpeg/src/codecs/mod.rs @@ -4,11 +4,19 @@ macro_rules! validate { ($a:expr) => { if !$a { println!("check failed at {}:{}", file!(), line!()); return Err(DecoderError::InvalidData); } }; } +#[cfg(feature="decoder_aac")] +#[allow(clippy::manual_memcpy)] +#[allow(clippy::useless_let_if_seq)] +mod aac; #[cfg(feature="decoder_mpa")] #[allow(clippy::excessive_precision)] 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 }, ]; @@ -19,3 +27,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); + } +}