96 lines
3.1 KiB
TOML
96 lines
3.1 KiB
TOML
[package]
|
|
name = "cpal"
|
|
version = "0.15.3"
|
|
description = "Low-level cross-platform audio I/O library in pure Rust."
|
|
repository = "https://github.com/rustaudio/cpal"
|
|
documentation = "https://docs.rs/cpal"
|
|
license = "Apache-2.0"
|
|
keywords = ["audio", "sound"]
|
|
edition = "2021"
|
|
rust-version = "1.70"
|
|
|
|
[features]
|
|
asio = ["asio-sys", "num-traits"] # Only available on Windows. See README for setup instructions.
|
|
oboe-shared-stdcxx = ["oboe/shared-stdcxx"] # Only available on Android. See README for what it does.
|
|
|
|
[dependencies]
|
|
dasp_sample = "0.11"
|
|
|
|
[dev-dependencies]
|
|
anyhow = "1.0"
|
|
hound = "3.5"
|
|
ringbuf = "0.3"
|
|
clap = { version = "4.0", features = ["derive"] }
|
|
|
|
[target.'cfg(target_os = "android")'.dev-dependencies]
|
|
ndk-glue = "0.7"
|
|
|
|
[target.'cfg(target_os = "windows")'.dependencies]
|
|
windows = { version = "0.54.0", features = [
|
|
"Win32_Media_Audio",
|
|
"Win32_Foundation",
|
|
"Win32_Devices_Properties",
|
|
"Win32_Media_KernelStreaming",
|
|
"Win32_System_Com_StructuredStorage",
|
|
"Win32_System_Threading",
|
|
"Win32_Security",
|
|
"Win32_System_SystemServices",
|
|
"Win32_System_Variant",
|
|
"Win32_Media_Multimedia",
|
|
"Win32_UI_Shell_PropertiesSystem"
|
|
]}
|
|
asio-sys = { version = "0.2", path = "asio-sys", optional = true }
|
|
num-traits = { version = "0.2.6", optional = true }
|
|
|
|
[target.'cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd", target_os = "netbsd"))'.dependencies]
|
|
alsa = "0.9"
|
|
libc = "0.2"
|
|
jack = { version = "0.11", optional = true }
|
|
|
|
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies]
|
|
core-foundation-sys = "0.8.2" # For linking to CoreFoundation.framework and handling device name `CFString`s.
|
|
mach2 = "0.4" # For access to mach_timebase type.
|
|
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
coreaudio-rs = { version = "0.11", default-features = false, features = ["audio_unit", "core_audio"] }
|
|
|
|
[target.'cfg(target_os = "ios")'.dependencies]
|
|
coreaudio-rs = { version = "0.11", default-features = false, features = ["audio_unit", "core_audio", "audio_toolbox"] }
|
|
|
|
[target.'cfg(target_os = "emscripten")'.dependencies]
|
|
wasm-bindgen = { version = "0.2.89" }
|
|
wasm-bindgen-futures = "0.4.33"
|
|
js-sys = { version = "0.3.35" }
|
|
web-sys = { version = "0.3.35", features = [ "AudioContext", "AudioContextOptions", "AudioBuffer", "AudioBufferSourceNode", "AudioNode", "AudioDestinationNode", "Window", "AudioContextState"] }
|
|
|
|
[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies]
|
|
wasm-bindgen = { version = "0.2.58", optional = true }
|
|
js-sys = { version = "0.3.35" }
|
|
web-sys = { version = "0.3.35", features = [ "AudioContext", "AudioContextOptions", "AudioBuffer", "AudioBufferSourceNode", "AudioNode", "AudioDestinationNode", "Window", "AudioContextState"] }
|
|
|
|
[target.'cfg(target_os = "android")'.dependencies]
|
|
oboe = { version = "0.6", features = [ "java-interface" ] }
|
|
ndk = { version = "0.8", default-features = false }
|
|
ndk-context = "0.1"
|
|
jni = "0.21"
|
|
|
|
[[example]]
|
|
name = "android"
|
|
path = "examples/android.rs"
|
|
crate-type = ["cdylib"]
|
|
|
|
[[example]]
|
|
name = "beep"
|
|
|
|
[[example]]
|
|
name = "enumerate"
|
|
|
|
[[example]]
|
|
name = "feedback"
|
|
|
|
[[example]]
|
|
name = "record_wav"
|
|
|
|
[[example]]
|
|
name = "synth_tones"
|