[package]
edition = "2024"
rust-version = "1.89.0"
name = "oto"
version = "0.2.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Oto (音) — audio framework: device management, codec support, playback, voice streaming"
homepage = "https://github.com/pleme-io/oto"
documentation = "https://docs.rs/oto"
readme = "README.md"
keywords = [
"audio",
"playback",
"voice",
"codec",
"streaming",
]
categories = ["multimedia::audio"]
license = "MIT"
repository = "https://github.com/pleme-io/oto"
[features]
backend-rodio = ["dep:rodio"]
default = []
[lib]
name = "oto"
path = "src/lib.rs"
[[test]]
name = "engine_mock"
path = "tests/engine_mock.rs"
[dependencies.rodio]
version = "0.20"
features = [
"symphonia-all",
"symphonia-aiff",
"symphonia-alac",
]
optional = true
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = ["sync"]
[dependencies.tracing]
version = "0.1"
[dev-dependencies.serde_json]
version = "1.0.149"
[dev-dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
"test-util",
]
[lints.clippy]
doc_markdown = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
[lints.clippy.pedantic]
level = "warn"
priority = -1