Initial release: real-time voice changer in pure Rust
Phase-vocoder pitch/formant shifting, 12 presets, effect chain, noise gate, WAV recording, full-screen TUI (arrow/mouse control) and a built-in PipeWire/PulseAudio virtual mic (vois.rs). GPL-3.0-or-later.
This commit is contained in:
commit
b0d685a110
25 changed files with 6243 additions and 0 deletions
18
src/audio/devices.rs
Normal file
18
src/audio/devices.rs
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
use anyhow::Result;
|
||||
use cpal::traits::{DeviceTrait, HostTrait};
|
||||
|
||||
pub fn print_all() -> Result<()> {
|
||||
let host = cpal::default_host();
|
||||
|
||||
println!("Input devices:");
|
||||
for device in host.input_devices()? {
|
||||
println!(" {}", device.name().unwrap_or_else(|_| "<unnamed>".into()));
|
||||
}
|
||||
|
||||
println!("Output devices:");
|
||||
for device in host.output_devices()? {
|
||||
println!(" {}", device.name().unwrap_or_else(|_| "<unnamed>".into()));
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue