]> git.nihav.org Git - nihav.git/commitdiff
nihav_hlblocks/demux: ignore RIFF MP3 container as well
authorKostya Shishkov <kostya.shishkov@gmail.com>
Sat, 12 Sep 2026 08:00:01 +0000 (10:00 +0200)
committerKostya Shishkov <kostya.shishkov@gmail.com>
Sat, 12 Sep 2026 08:00:01 +0000 (10:00 +0200)
nihav-hlblocks/src/demux.rs

index d8d2cd86215e802dae2a14fc7e3614122a1b89a3..96f8eb43074d6a1ac5c1a385202cc8a1bd5b480d 100644 (file)
@@ -518,6 +518,14 @@ pub fn detect_tags(br: &mut dyn ByteIO, verbose: bool) -> (bool, u64, Option<u64
     let mut start = 0;
     let mut end = None;
 
+    // check for RIFF MP3 container
+    {
+        let mut buf = [0; 20];
+        if br.peek_buf(&mut buf).is_ok() && &buf[..4] == b"RIFF" && &buf[8..16] == b"RMP3data" {
+            let size = read_u32le(&buf[16..]).unwrap_or_default();
+            return (true, 20, Some(u64::from(size) + 20));
+        }
+    }
     // check for ID3v{2-4}
     let mut buf = [0; 5];
     loop {