Zero API changes, only bumps internal deps (windows-sys, redox_users). Eliminates duplicate dirs versions in Cargo.lock. Closes #257 cc
46 lines
1.0 KiB
TOML
46 lines
1.0 KiB
TOML
[package]
|
|
name = "qbz-audio"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
description = "Audio backend system for QBZ - bit-perfect playback"
|
|
|
|
[dependencies]
|
|
qbz-models = { path = "../qbz-models" }
|
|
|
|
# Async
|
|
tokio = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
|
|
# Logging
|
|
log = { workspace = true }
|
|
|
|
# Serialization
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
|
|
# Error handling
|
|
thiserror = { workspace = true }
|
|
|
|
# Audio playback (f32 pipeline is now upstream in rodio 0.22)
|
|
rodio = { version = "0.22", features = ["symphonia-all"] }
|
|
|
|
# Audio analysis
|
|
symphonia = { workspace = true }
|
|
ebur128 = "0.1"
|
|
rustfft = "6.4"
|
|
|
|
# Database for loudness cache
|
|
rusqlite = { version = "0.31", features = ["bundled"] }
|
|
|
|
# System directories
|
|
dirs = "6"
|
|
|
|
[target.'cfg(target_os = "linux")'.dependencies]
|
|
# ALSA for direct hardware access (bit-perfect)
|
|
alsa = "0.10"
|
|
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
# CoreAudio for device probing, sample rate switching, and (future) hog mode / exclusive mode
|
|
coreaudio-rs = "0.14.1"
|