cpal
cpal copied to clipboard
Cross-platform audio I/O library in pure Rust
Currently the `Device::name()` on `oboe` host (Android) only contains the `oboe::AudioDeviceInfo::product_name` string. This is, however, identical for all internal audio devices. This PR changes this to add the `AudioDeviceType` and,...
When compiling a Rust project using `cpal` for `wasm32-unknown-emscripten`, the build fails due to multiple errors: 1. **Duplicate module definition** (`E0428`): ``` error[E0428]: the name `platform_impl` is defined multiple times...
When running with: ```bash cargo build --target wasm_unknown_emscripten ``` Seems to duplicate platform_impl in https://github.com/RustAudio/cpal/blob/master/src/platform/mod.rs #[cfg(target_os = "emscripten")] mod platform_impl { #[cfg(all(target_arch = "wasm32", feature = "wasm-bindgen"))] mod platform_impl {
This pull request adds an optional feature-flagged `Host` that uses [AudioWorklet](https://developer.mozilla.org/en-US/docs/Web/API/AudioWorklet) on web when the `atomics` feature is enabled. When the `web_audio_worklet` and `wasm-bindgen` features are enabled and nightly Rust...
The `SupportedStreamConfigRange`, `SuportedStreamConfig` and `StreamConfig` types make configuring streams in cpal far more complicated and unpleasant than it would need to be. - `SupportedStreamConfigRange` - range of sampling rates and...
Works on my machine :p Did a quick check over the different hosts, and it looks like literally all of them are identical except for the Null host, so it...
Fix iOS crash on startup due to inactive audio session
Hello! I'm somehow getting some weird artifacts if I try to iterate through the available devices: ``` ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open...
Feature Request: read default buffer size from `Stream`, and/or query device's preferred buffer size
With ASIO the driver will report a preferred buffer size, and I'm guessing this is what gets used when the default buffer size is chosen. It'd be nice to know...
Currently CPAL's stream data callback API allows the user to assume that audio data will be provided with channels interleaved in a single slice of memory. There are some issues...