summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKostya Shishkov <[email protected]>2020-10-03 12:24:53 +0200
committerKostya Shishkov <[email protected]>2020-10-03 12:24:53 +0200
commit7d6bb2e867e6f931a9791b2ee0ae66069edb4ae2 (patch)
tree2283f3b8561a2b256bdd955ef77b680e11b329c9
parent1fb2da784666ce932a2a59e55f0ba8f1cba2e841 (diff)
wavpack: seek to the last frame before skipping frames
-rw-r--r--nihav-llaudio/src/demuxers/wavpack.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/nihav-llaudio/src/demuxers/wavpack.rs b/nihav-llaudio/src/demuxers/wavpack.rs
index 9cfbba8..d07a5a2 100644
--- a/nihav-llaudio/src/demuxers/wavpack.rs
+++ b/nihav-llaudio/src/demuxers/wavpack.rs
@@ -230,6 +230,8 @@ impl<'a> DemuxCore<'a> for WavPackDemuxer<'a> {
}
} else {
let mut hdrbuf = [0u8; WV_HEADER_SIZE];
+ let lastoff = self.known_frames.last().unwrap_or(&FrameSeekInfo::default()).off;
+ self.src.seek(SeekFrom::Start(lastoff))?;
loop {
self.src.peek_buf(&mut hdrbuf)?;
let hdr = WVHeader::parse(&hdrbuf)?;