X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-registry%2Fsrc%2Fdetect.rs;h=e916dc649eda4a0dc6cf8ae5cbd212962452a9ac;hb=696e4e20bf7167121352f247893370cb83213d5c;hp=92bb920e0e36555840d067f7c20a22242b2a62dc;hpb=4b56e8c9d1b60914c154720561ba759a343d5bbf;p=nihav.git diff --git a/nihav-registry/src/detect.rs b/nihav-registry/src/detect.rs index 92bb920..e916dc6 100644 --- a/nihav-registry/src/detect.rs +++ b/nihav-registry/src/detect.rs @@ -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; }