X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-acorn%2Fsrc%2Fcodecs%2Fmod.rs;h=7842b74bfa6a1d183af0a7c61eb25144cc367417;hb=b8ea95bcd62ebd2a6b58a889c0a2e0e35fa212d3;hp=e5dba8a0b9c4790c7309c19555d3f7ecaa9f22eb;hpb=672bcc7f2c258cbd5e09479e3ed397f740bed47f;p=nihav.git diff --git a/nihav-acorn/src/codecs/mod.rs b/nihav-acorn/src/codecs/mod.rs index e5dba8a..7842b74 100644 --- a/nihav-acorn/src/codecs/mod.rs +++ b/nihav-acorn/src/codecs/mod.rs @@ -25,18 +25,36 @@ mod yuvtab; mod movinglines; #[cfg(feature="decoder_movingblocks")] mod movingblocks; +#[cfg(feature="decoder_movingblockshq")] +mod movingblockshq; +#[cfg(feature="decoder_supermovingblocks")] +mod supermovingblocks; +#[cfg(feature="decoder_rawvideo")] +mod rawvideo; #[cfg(feature="decoder_linepack")] mod linepack; +#[cfg(feature="decoder_rawaudio")] +mod rawaudio; + const ACORN_CODECS: &[DecoderInfo] = &[ +#[cfg(feature="decoder_rawvideo")] + DecoderInfo { name: "arm_rawvideo", get_decoder: rawvideo::get_decoder }, #[cfg(feature="decoder_movinglines")] DecoderInfo { name: "movinglines", get_decoder: movinglines::get_decoder }, #[cfg(feature="decoder_movingblocks")] DecoderInfo { name: "movingblocks", get_decoder: movingblocks::get_decoder }, +#[cfg(feature="decoder_movingblockshq")] + DecoderInfo { name: "movingblockshq", get_decoder: movingblockshq::get_decoder }, +#[cfg(feature="decoder_supermovingblocks")] + DecoderInfo { name: "supermovingblocks", get_decoder: supermovingblocks::get_decoder }, #[cfg(feature="decoder_linepack")] DecoderInfo { name: "linepack", get_decoder: linepack::get_decoder }, + +#[cfg(feature="decoder_rawaudio")] + DecoderInfo { name: "arm_rawaudio", get_decoder: rawaudio::get_decoder }, ]; /// Registers all available codecs provided by this crate. @@ -46,14 +64,31 @@ pub fn acorn_register_all_decoders(rd: &mut RegisteredDecoders) { } } +#[cfg(any(feature="packetiser_cinepak", feature="packetiser_msvideo1"))] +mod wss_packetisers; + const ACORN_PACKETISERS: &[PacketiserInfo] = &[ +#[cfg(feature="decoder_rawvideo")] + PacketiserInfo { name: "arm_rawvideo", get_packetiser: rawvideo::get_packetiser }, #[cfg(feature="decoder_movinglines")] PacketiserInfo { name: "movinglines", get_packetiser: movinglines::get_packetiser }, #[cfg(feature="decoder_movingblocks")] PacketiserInfo { name: "movingblocks", get_packetiser: movingblocks::get_packetiser }, +#[cfg(feature="decoder_movingblockshq")] + PacketiserInfo { name: "movingblockshq", get_packetiser: movingblockshq::get_packetiser }, +#[cfg(feature="decoder_supermovingblocks")] + PacketiserInfo { name: "supermovingblocks", get_packetiser: supermovingblocks::get_packetiser }, #[cfg(feature="decoder_linepack")] PacketiserInfo { name: "linepack", get_packetiser: linepack::get_packetiser }, + +#[cfg(feature="decoder_rawaudio")] + PacketiserInfo { name: "arm_rawaudio", get_packetiser: rawaudio::get_packetiser }, + +#[cfg(feature="packetiser_cinepak")] + PacketiserInfo { name: "cinepak", get_packetiser: wss_packetisers::get_packetiser_cinepak }, +#[cfg(feature="packetiser_msvideo1")] + PacketiserInfo { name: "msvideo1", get_packetiser: wss_packetisers::get_packetiser_msvideo1 }, ]; /// Registers all available packetisers provided by this crate.