fix some warnings (unneeded parentheses, missing dyn keyword)
[nihav.git] / nihav-registry / src / detect.rs
index 92bb920e0e36555840d067f7c20a22242b2a62dc..e916dc649eda4a0dc6cf8ae5cbd212962452a9ac 100644 (file)
@@ -254,6 +254,28 @@ const DETECTORS: &[DetectConditions] = &[
         extensions: ".smk",
         conditions: &[CheckItem{offs: 0, cond: &CC::Or(&CC::Str(b"SMK2"), &CC::Str(b"SMK4"))}],
     },
+    DetectConditions {
+        demux_name: "ape",
+        extensions: ".ape",
+        conditions: &[CheckItem{offs: 0, cond: &CC::Str(b"MAC ") },
+                      CheckItem{offs: 4, cond: &CC::In(Arg::U16LE(3800), Arg::U16LE(3990))}],
+    },
+    DetectConditions {
+        demux_name: "flac",
+        extensions: ".flac",
+        conditions: &[CheckItem{offs: 0, cond: &CC::Str(b"fLaC") }],
+    },
+    DetectConditions {
+        demux_name: "tta",
+        extensions: ".tta",
+        conditions: &[CheckItem{offs: 0, cond: &CC::Str(b"TTA1") }],
+    },
+    DetectConditions {
+        demux_name: "wavpack",
+        extensions: ".wv",
+        conditions: &[CheckItem{offs: 0, cond: &CC::Str(b"wvpk") },
+                      CheckItem{offs: 8, cond: &CC::In(Arg::U16LE(0x402), Arg::U16LE(0x410))}],
+    },
     DetectConditions {
         demux_name: "vivo",
         extensions: ".viv",
@@ -282,6 +304,11 @@ const DETECTORS: &[DetectConditions] = &[
         extensions: ".vmd",
         conditions: &[],
     },
+    DetectConditions {
+        demux_name: "vx",
+        extensions: ".vx",
+        conditions: &[CheckItem{offs: 0, cond: &CC::Str(b"VXDS") }],
+    },
 ];
 
 /// Tries to detect container format.
@@ -333,7 +360,7 @@ pub fn detect_format(name: &str, src: &mut ByteReader) -> Option<(&'static str,
 }
 
 /// Tries to detect container format for provided file name.
-pub fn detect_format_by_name(name: &str) -> Option<(&'static str)> {
+pub fn detect_format_by_name(name: &str) -> Option<&'static str> {
     if name.is_empty() {
         return None;
     }