# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

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

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
aac = [
    "symphonia",
    "symphonia/aac",
]
adpcm = [
    "symphonia",
    "symphonia/adpcm",
]
aiff = [
    "symphonia",
    "symphonia/aiff",
]
alac = [
    "symphonia",
    "symphonia/alac",
]
caf = [
    "symphonia",
    "symphonia/caf",
]
default = [
    "cpal",
    "mp3",
    "ogg",
    "vorbis",
    "flac",
    "wav",
    "pcm",
]
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",
]

[lib]
name = "kira"
path = "src/lib.rs"

[[test]]
name = "change_sample_rate"
path = "tests/change_sample_rate.rs"

[[test]]
name = "streaming_sound_stops_on_error"
path = "tests/streaming_sound_stops_on_error.rs"

[[test]]
name = "sync_send"
path = "tests/sync_send.rs"

[dependencies.assert_no_alloc]
version = "1.1.2"
optional = true

[dependencies.atomic-arena]
version = "0.1.2"

[dependencies.glam]
version = "0.32.0"
features = ["mint"]

[dependencies.mint]
version = "0.5.9"

[dependencies.pastey]
version = "0.2.1"

[dependencies.rtrb]
version = "0.3.2"

[dependencies.serde]
version = "1.0.219"
features = ["derive"]
optional = true

[dependencies.symphonia]
version = "0.5.4"
optional = true
default-features = false

[dependencies.triple_buffer]
version = "8.1.1"

[dev-dependencies.approx]
version = "0.5.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"
features = ["wasm-bindgen"]
optional = true

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