From fc5771f00f6aaa2b2a5fe69ddc19655c353e3214 Mon Sep 17 00:00:00 2001 From: bflatastic Date: Fri, 9 Oct 2026 16:43:21 +0700 Subject: [PATCH] Media: resampling footage audio guards a zero mix rate (#274) A requested rate of 0 would divide by zero in the resampler; it now reads through the plain path, which returns silence for it. Co-Authored-By: Claude Opus 5.5 --- crates/media/src/pool.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/media/src/pool.rs b/crates/media/src/pool.rs index 8cdb6261..a13c081a 100644 --- a/crates/media/src/pool.rs +++ b/crates/media/src/pool.rs @@ -388,7 +388,7 @@ impl MediaPool { let Some(src) = self.inner.source(&path) else { return vec![0.0; frames * 2] }; let s0 = start.to_units_floor(rate as i64); let native = src.info().audio.as_ref().map_or(rate, |a| a.sample_rate); - if native == 0 || native == rate { + if native == 0 || rate == 0 || native == rate { return read_stereo(&src, &path, s0, frames, rate); } // Output sample `n` sits at source position n × native / rate.