14 releases
0.1.14 | Feb 16, 2024 |
---|---|
0.1.13 | Feb 11, 2024 |
0.1.12 | Oct 3, 2023 |
0.1.11 | Jul 30, 2023 |
0.1.4 | Mar 29, 2022 |
#180 in Audio
125 downloads per month
Used in 3 crates
67KB
1.5K
SLoC
wav_io
This is a crate for reading and writing wav file.
Suported format:
- PCM 8, 16, 24, 32 bits Int
- PCM 32, 64 bits Float
Functions
Install
Add wav_io to your project:
cargo add wav_io
Samples
use std::f32::consts::PI;
fn main() {
// make sine wave
let head = wav_io::new_mono_header();
let mut samples: Vec<f32> = vec![];
for t in 0..head.sample_rate {
let v = ((t as f32 / head.sample_rate as f32) * 440.0 * 2.0 * PI).sin() * 0.6;
samples.push(v);
}
// write to file
let mut file_out = std::fs::File::create("./sine.wav").unwrap();
wav_io::write_to_file(&mut file_out, &head, &samples).unwrap();
}