| Crates.io | firewheel-web-audio |
| lib.rs | firewheel-web-audio |
| version | 0.3.0-rc.1 |
| created_at | 2025-06-04 09:12:52.741624+00 |
| updated_at | 2025-09-16 20:52:06.26358+00 |
| description | A multi-threaded Web Audio backend for Firewheel |
| homepage | |
| repository | https://github.com/corvusprudens/firewheel-web-audio |
| max_upload_size | |
| id | 1699998 |
| size | 81,248 |
A multi-threaded wasm32-unknown-unknown Web Audio
backend for Firewheel.
Currently, this backend only supports stereo inputs and outputs.
Because this crate relies on Wasm multi-threading, it has some additional requirements.
rustup, you can add it with rustup component add rust-src).atomics, bulk-memory, and mutable-globals target features.
These can be enabled with a .cargo/config.toml:[target.wasm32-unknown-unknown]
rustflags = ["-C", "target-feature=+atomics,+bulk-memory,+mutable-globals"]
[unstable]
build-std = ["std", "core", "alloc", "panic_abort"]
https)
and the response must include two security headers:Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp
# or
Cross-Origin-Embedder-Policy: credentialless
Note that credentialless may not work on Safari: the browser
may throw an error in the audio worklet upon receiving shared Wasm memory.