27 lines
1.1 KiB
Markdown
27 lines
1.1 KiB
Markdown
# CPAL - Cross-Platform Audio Library
|
|
|
|
[![Build Status](https://travis-ci.org/tomaka/cpal.svg?branch=master)](https://travis-ci.org/tomaka/cpal) [![Crates.io](https://img.shields.io/crates/v/cpal.svg)](https://crates.io/crates/cpal) [![docs.rs](https://docs.rs/cpal/badge.svg)](https://docs.rs/cpal/)
|
|
|
|
Low-level library for audio input and output in pure Rust.
|
|
|
|
This library currently supports the following:
|
|
|
|
- Enumerate supported audio hosts.
|
|
- 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)
|
|
- Windows
|
|
- macOS (via CoreAudio)
|
|
- iOS (via CoreAudio)
|
|
- Emscripten
|
|
|
|
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.
|