[package]
edition = "2021"
name = "phonic"
version = "0.15.0"
authors = ["Eduard Müller <mail@emuell.net>"]
build = "build.rs"
exclude = [
"assets",
"examples",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Audio playback library"
readme = "README.md"
keywords = [
"audio",
"dsp",
"playback",
"emscripten",
]
categories = ["multimedia::audio"]
license = "\tAGPL-3.0"
repository = "https://github.com/emuell/phonic"
[package.metadata.docs.rs]
no-default-features = true
features = [
"cpal-output",
"wav-output",
"fundsp",
]
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
assert-allocs = ["dep:assert_no_alloc"]
cpal-output = ["dep:cpal"]
default = [
"cpal-output",
"wav-output",
"assert-allocs",
]
fundsp = ["dep:fundsp"]
wav-output = ["dep:hound"]
web-output = []
[lib]
name = "phonic"
crate-type = [
"cdylib",
"rlib",
]
path = "src/lib.rs"
[dependencies.assert_no_alloc]
version = "^1.1"
features = ["warn_debug"]
optional = true
[dependencies.assume]
version = "^0.5"
[dependencies.audio_thread_priority]
version = "^0.34"
default-features = false
[dependencies.basedrop]
version = "^0.1"
[dependencies.byteorder]
version = "^1.5"
default-features = false
[dependencies.cpal]
version = "^0.16"
features = [
"jack",
"asio",
]
optional = true
[dependencies.crossbeam-channel]
version = "^0.5"
features = ["std"]
default-features = false
[dependencies.crossbeam-queue]
version = "^0.3"
features = ["alloc"]
default-features = false
[dependencies.dashmap]
version = "^6.1"
[dependencies.four-cc]
version = "^0.4"
default-features = false
[dependencies.fundsp]
version = "^0.23"
features = ["std"]
optional = true
default-features = false
[dependencies.hound]
version = "^3.5"
optional = true
[dependencies.log]
version = "^0.4"
features = [
"max_level_debug",
"release_max_level_info",
]
[dependencies.num_cpus]
version = "^1.16"
[dependencies.panic-message]
version = "^0.3"
[dependencies.pulp]
version = "^0.21"
features = ["macro"]
default-features = false
[dependencies.rand]
version = "^0.9"
features = [
"thread_rng",
"small_rng",
]
default-features = false
[dependencies.rb]
version = "^0.4"
[dependencies.riff]
version = "^2.0"
[dependencies.rubato]
version = "^0.16"
default-features = false
[dependencies.strum]
version = "^0.27"
features = ["derive"]
default-features = false
[dependencies.symphonia]
version = "^0.5"
features = [
"aiff",
"adpcm",
"alac",
"flac",
"ogg",
"mp3",
"pcm",
"wav",
]
default-features = false
[target.'cfg(not(target_os = "emscripten"))'.dev-dependencies.arg]
version = "^0.4"
features = ["std"]
[target.'cfg(not(target_os = "emscripten"))'.dev-dependencies.device_query]
version = "^4.0"
[target.'cfg(not(target_os = "emscripten"))'.dev-dependencies.hound]
version = "^3.5"
[target.'cfg(not(target_os = "emscripten"))'.dev-dependencies.simple_logger]
version = "^5.1"
default-features = false
[target.'cfg(not(target_os = "emscripten"))'.dev-dependencies.svg]
version = "^0.18"
[target.'cfg(target_os = "emscripten")'.dependencies.emscripten-rs-macros]
version = "^0.1"
[target.'cfg(target_os = "emscripten")'.dependencies.emscripten_rs_sys]
version = "^0.1"
default-features = false
[profile.dev.package.fundsp]
opt-level = 2
[profile.dev.package.rubato]
opt-level = 2
[profile.release]
debug = 1