We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 78142a6 commit 9254570Copy full SHA for 9254570
src/decoder/flac.rs
@@ -41,13 +41,14 @@ where
41
42
let spec = reader.streaminfo();
43
let sample_rate = spec.sample_rate;
44
+ let channels = spec.channels;
45
46
// `samples` in FLAC means "inter-channel samples" aka frames
47
// so we do not divide by `self.channels` here.
48
let total_duration = spec.samples.map(|s| {
49
// Calculate duration as (samples * 1_000_000) / sample_rate
50
// but do the division first to avoid overflow
- let sample_rate = sample_rate as u64;
51
+ let sample_rate = sample_rate as u64 * channels as u64;
52
let secs = s / sample_rate;
53
let nanos = ((s % sample_rate) * 1_000_000_000) / sample_rate;
54
Duration::new(secs, nanos as u32)
0 commit comments