[package]
name = "kira"
version = "0.12.0"
authors = ["Andrew Minnich <aminnich3@gmail.com>"]
edition.workspace = true
license = "MIT OR Apache-2.0"
description = "Expressive audio library for games"
repository = "https://github.com/tesselode/kira"
keywords = ["gamedev", "audio", "music"]
categories = ["game-development", "multimedia::audio"]
readme = "../../README.md"

[dependencies]
assert_no_alloc = { version = "1.1.2", optional = true }
atomic-arena = "0.1.2"
glam = { version = "0.32.0", features = ["mint"] }
mint = "0.5.9"
pastey = "0.2.1"
rtrb = "0.3.2"
serde = { version = "1.0.219", features = ["derive"], optional = true }
symphonia = { version = "0.5.4", optional = true, default-features = false }
triple_buffer = "8.1.1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.cpal]
version = "0.17.0"
optional = true

[target.'cfg(target_arch = "wasm32")'.dependencies.cpal]
version = "0.17.0"
optional = true
features = ["wasm-bindgen"]

[target.'cfg(target_arch = "wasm32")'.dependencies]
send_wrapper = "0.6.0"

[features]
default = ["cpal", "mp3", "ogg", "vorbis", "flac", "wav", "pcm"]

aac = ["symphonia", "symphonia/aac"]
adpcm = ["symphonia", "symphonia/adpcm"]
aiff = ["symphonia", "symphonia/aiff"]
alac = ["symphonia", "symphonia/alac"]
caf = ["symphonia", "symphonia/caf"]
flac = ["symphonia", "symphonia/flac"]
isomp4 = ["symphonia", "symphonia/isomp4"]
mkv = ["symphonia", "symphonia/mkv"]
mp1 = ["symphonia", "symphonia/mp1"]
mp2 = ["symphonia", "symphonia/mp2"]
mp3 = ["symphonia", "symphonia/mp3"]
mpa = ["symphonia", "symphonia/mpa"]
ogg = ["symphonia", "symphonia/ogg"]
pcm = ["symphonia", "symphonia/pcm"]
vorbis = ["symphonia", "symphonia/vorbis"]
wav = ["symphonia", "symphonia/wav"]

[dev-dependencies]
approx = "0.5.1"

# docs.rs-specific configuration
[package.metadata.docs.rs]
# document all features
all-features = true
# defines the configuration attribute `docsrs`
rustdoc-args = ["--cfg", "docsrs"]
