projects
/
nihav.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
siff: fix SON duration
[nihav.git]
/
nihav-game
/
src
/
demuxers
/
siff.rs
diff --git
a/nihav-game/src/demuxers/siff.rs
b/nihav-game/src/demuxers/siff.rs
index 7bc29fc7fd6c493c457871064abceb8d1e00fd36..1c961bea1e304850c9f80438b742651567b49151 100644
(file)
--- a/
nihav-game/src/demuxers/siff.rs
+++ b/
nihav-game/src/demuxers/siff.rs
@@
-204,7
+204,7
@@
impl<'a> SIFFDemuxer<'a> {
validate!(&tag == b"SHDR");
let hdr_size = self.src.read_u32be()? as usize;
validate!(hdr_size >= 8);
validate!(&tag == b"SHDR");
let hdr_size = self.src.read_u32be()? as usize;
validate!(hdr_size >= 8);
- let
snd_size = self.src.read_u32le()?
;
+ let
duration = self.src.read_u32le()? as u64
;
let srate = self.src.read_u16le()? as u32;
let flags = self.src.read_u16le()?;
let bits = flags as u8;
let srate = self.src.read_u16le()? as u32;
let flags = self.src.read_u16le()?;
let bits = flags as u8;
@@
-213,8
+213,6
@@
impl<'a> SIFFDemuxer<'a> {
self.ablock = (bits as usize) * (channels as usize);
self.src.read_skip(hdr_size - 8)?;
self.ablock = (bits as usize) * (channels as usize);
self.src.read_skip(hdr_size - 8)?;
- let duration = u64::from(snd_size) / u64::from(channels) * 8 / u64::from(bits);
-
let fmt = match bits {
8 => SND_U8_FORMAT,
16 => SND_S16_FORMAT,
let fmt = match bits {
8 => SND_U8_FORMAT,
16 => SND_S16_FORMAT,