PortAudio bindings for Rust
See http://portaudio.com/
```rust fn demo() -> rportaudio::rpaerror::PaResult { let stream = rportaudio::stream::Stream::opendefault( 0, // input channels 1, // output channels 44100.0, // sample rate rportaudio::stream::FRAMESPERBUFFER_UNSPECIFIED, None, // no callback )?;
stream.start()?;
let mut phase = 0.0f32; let mut buffer = Vec::with_capacity(44100); for _i in (0..44100) { // Small amplitude such that the test does not produce sound buffer.push(phase * 0.001);
phase += 0.03;
if phase > 1.0 { phase -= 2.0; }
}
stream.write(&buffer)?;
Ok(()) }
fn main() { rportaudio::initialize().unwrap(); println!("{:?}", demo()); rportaudio::terminate().unwrap(); } ```
rportaudio crate will auto compile or find system portaudio lib, if don't want this, you can set a PA_LINK=false
environment value cancel this action