audio
audio copied to clipboard
A crate for working with audio in Rust
This crate looks nice, but it seems to be missing a way to iterate over the frames of a buffer, only the samples within one channel at a time. Sometimes...
``` audio on main via 🦀 v1.58.0 ❯ cargo build Updating crates.io index Updating git repository `https://github.com/udoprog/minimp3-rs` Updating git submodule `https://github.com/lieff/minimp3.git` Updating git repository `https://github.com/udoprog/rubato` error: no matching package...
I frequently get questions about how to use my [resampling library](https://github.com/HEnquist/rubato) to resample audio data that is in integer format, often `i16` but it varies. My resampler (as most other...
Vet the API against (forks) of third party projects to ensure that *it works* as intended. List includes: * [rubato](https://github.com/HEnquist/rubato) (outdated [fork](https://github.com/udoprog/rubato/tree/next)). * [minimp3-rs](https://github.com/germangb/minimp3-rs) ([fork](https://github.com/udoprog/minimp3-rs/tree/next)). * [cpal](https://github.com/RustAudio/cpal). * [creek](https://github.com/MeadowlarkDAW/creek). *...
It would be nice to shrink a buffer's capacity after resizing it, like [std::vec::Vec::shrink_to_fit](https://doc.rust-lang.org/std/vec/struct.Vec.html#method.shrink_to_fit).
Currently, audio::wrap::Dynamic does not implement the ExactSizeBuf trait. I think it is the only buffer struct in audio that does not implement this trait. Rubato needs the number of frames...
I'm wondering if it could be helpful to add a struct like ```rust struct Topology { pub channels: usize, pub frames: usize, } ``` to pass to Buf::with_topology and ResizableBuf::resize_topology....
Two libraries I'm using quite frequently are `bstr`, and `bytes` (who's naming convention is borrowed here), and one of their decisions is to implement an [extension trait directly on types...