introduce raw video "codec"
[nihav.git] / nihav-commonfmt / src / codecs / mod.rs
index e2f5ed09f31f66926c2fbfcc983a56a36f2b33d8..2c9eef764eef7d194b95e7ec144fc5fc55bc167c 100644 (file)
@@ -8,14 +8,25 @@ macro_rules! validate {
 mod cinepak;
 #[cfg(feature="decoder_clearvideo")]
 mod clearvideo;
+#[cfg(feature="decoder_rawvideo")]
+mod rawvideo;
+#[cfg(feature="decoder_zmbv")]
+mod zmbv;
 
 #[cfg(feature="decoder_aac")]
+#[allow(clippy::manual_memcpy)]
+#[allow(clippy::useless_let_if_seq)]
 mod aac;
 #[cfg(feature="decoder_atrac3")]
+#[allow(clippy::identity_op)]
+#[allow(clippy::useless_let_if_seq)]
 mod atrac3;
 #[cfg(any(feature="decoder_pcm",feature="encoder_pcm"))]
 mod pcm;
 #[cfg(feature="decoder_sipro")]
+#[allow(clippy::collapsible_if)]
+#[allow(clippy::identity_op)]
+#[allow(clippy::manual_memcpy)]
 mod sipro;
 #[cfg(feature="decoder_ts102366")]
 mod ts102366;
@@ -27,9 +38,17 @@ const DECODERS: &[DecoderInfo] = &[
     DecoderInfo { name: "clearvideo", get_decoder: clearvideo::get_decoder },
 #[cfg(feature="decoder_clearvideo")]
     DecoderInfo { name: "clearvideo_rm", get_decoder: clearvideo::get_decoder_rm },
+#[cfg(feature="decoder_rawvideo")]
+    DecoderInfo { name: "rawvideo", get_decoder: rawvideo::get_decoder },
+#[cfg(feature="decoder_zmbv")]
+    DecoderInfo { name: "zmbv", get_decoder: zmbv::get_decoder },
 
 #[cfg(feature="decoder_pcm")]
     DecoderInfo { name: "pcm", get_decoder: pcm::get_decoder },
+#[cfg(feature="decoder_pcm")]
+    DecoderInfo { name: "alaw", get_decoder: pcm::get_a_law_decoder },
+#[cfg(feature="decoder_pcm")]
+    DecoderInfo { name: "ulaw", get_decoder: pcm::get_mu_law_decoder },
 #[cfg(feature="decoder_sipro")]
     DecoderInfo { name: "sipro", get_decoder: sipro::get_decoder },
 #[cfg(feature="decoder_ts102366")]
@@ -41,18 +60,22 @@ const DECODERS: &[DecoderInfo] = &[
 ];
 
 /// Registers all available codecs provided by this crate.
-pub fn generic_register_all_codecs(rd: &mut RegisteredDecoders) {
+pub fn generic_register_all_decoders(rd: &mut RegisteredDecoders) {
     for decoder in DECODERS.iter() {
-        rd.add_decoder(decoder.clone());
+        rd.add_decoder(*decoder);
     }
 }
 
 #[cfg(feature="encoder_cinepak")]
 mod cinepakenc;
+#[cfg(feature="encoder_zmbv")]
+mod zmbvenc;
 
 const ENCODERS: &[EncoderInfo] = &[
 #[cfg(feature="encoder_cinepak")]
     EncoderInfo { name: "cinepak", get_encoder: cinepakenc::get_encoder },
+#[cfg(feature="encoder_zmbv")]
+    EncoderInfo { name: "zmbv", get_encoder: zmbvenc::get_encoder },
 
 #[cfg(feature="encoder_pcm")]
     EncoderInfo { name: "pcm", get_encoder: pcm::get_encoder },
@@ -61,7 +84,7 @@ const ENCODERS: &[EncoderInfo] = &[
 /// Registers all available encoders provided by this crate.
 pub fn generic_register_all_encoders(re: &mut RegisteredEncoders) {
     for encoder in ENCODERS.iter() {
-        re.add_encoder(encoder.clone());
+        re.add_encoder(*encoder);
     }
 }