]> git.nihav.org Git - nihav-player.git/blobdiff - sndplay/src/demux.rs
sndplay: read ID3 padding
[nihav-player.git] / sndplay / src / demux.rs
index de9a06739df8bae6721d63ae64bee1b5974cd173..d40c29c72741b8ff4927c54479c3d20467e22a17 100644 (file)
@@ -126,7 +126,8 @@ impl<'a> DemuxerObject<'a> {
         }
         br.seek(SeekFrom::Start(0)).unwrap();
         let mut buf = vec![0; 1048576];
-        let size = br.peek_buf(&mut buf).unwrap();
+        let size = br.read_buf_some(&mut buf).unwrap();
+        br.seek(SeekFrom::Start(0)).unwrap();
         let mut pname = "";
 
         for pinfo in reg.pkt_reg.iter() {
@@ -298,6 +299,10 @@ pub fn detect_tags(br: &mut ByteReader) -> (bool, u64, Option<u64>) {
             }
             start += size + 10;
             br.read_skip(size as usize).unwrap();
+            while let Ok(0) = br.read_byte() {
+                start += 1;
+            }
+            br.seek(SeekFrom::Start(start)).unwrap();
             is_raw = true;
         } else {
             break;