agent-joule/crates/denoise/examples/enable_disable.rs
David Charlot a084434e14 Baseline: hard fork of zed@e2e7a67
Fork point for agent-zed. Editor core retained; AI/telemetry/cloud layers
to be ripped and replaced per FORK_MAP.md.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-05-30 08:20:23 -04:00

23 lines
676 B
Rust

use std::time::Duration;
use rodio::Source;
use rodio::wav_to_file;
use rodio::{nz, source::UniformSourceIterator};
fn main() -> Result<(), Box<dyn std::error::Error>> {
let file = std::fs::File::open("clips_airconditioning.wav")?;
let decoder = rodio::Decoder::try_from(file)?;
let resampled = UniformSourceIterator::new(decoder, nz!(1), nz!(16_000));
let mut enabled = true;
let denoised = denoise::Denoiser::try_new(resampled)?.periodic_access(
Duration::from_secs(2),
|denoised| {
enabled = !enabled;
denoised.set_enabled(enabled);
},
);
wav_to_file(denoised, "processed.wav")?;
Ok(())
}