CPAL - Cross-Platform Audio Library
Low-level library for audio input and output in pure Rust.
This library currently supports the following:
- Enumerate all available audio devices.
- Get the current default input and output devices.
- Enumerate known supported input and output stream formats for a device.
- Get the current default input and output stream formats for a device.
- Build and run input and output PCM streams on a chosen device with a given stream format.
Currently supported backends include:
- Linux (via ALSA)
- macOS (via CoreAudio)
- iOS (via CoreAudio)
Note that on Linux, the ALSA development files are required. These are provided
as part of the
libasound2-dev package on Debian and Ubuntu distributions and
alsa-lib-devel on Fedora.