]> git.nihav.org Git - nihav.git/blobdiff - nihav-acorn/src/codecs/mod.rs
Acorn Super Moving Blocks Decoder
[nihav.git] / nihav-acorn / src / codecs / mod.rs
index 946ac05e5a95106e301f7a5d95bb1e5a5309a6f2..7842b74bfa6a1d183af0a7c61eb25144cc367417 100644 (file)
@@ -25,12 +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.
@@ -40,11 +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.