Includes prior-session patches (carry forward so the app compiles): - crates/gpui/build.rs: cross-compile manifest fix - crates/gpui/src/platform.rs: PlatformWindow::activate_with_token trait method - crates/gpui/src/window.rs: Window::activate_with_token public API - crates/gpui_linux/src/linux/wayland/window.rs: WaylandWindow::activate_with_token + activate() keyboard-serial fix Plus the focus-serial fix: - serial.rs: SerialKind::KeyboardEnter - client.rs: store wl_keyboard.enter serial; latest_serial_of() Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
24 lines
676 B
Rust
24 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(())
|
|
}
|