[package]
edition = "2024"
rust-version = "1.95"
name = "firered-vad"
version = "0.1.0"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Streaming Voice Activity Detection wrapping the FireRedVAD model via ONNX Runtime"
documentation = "https://docs.rs/firered-vad"
readme = "README.md"
keywords = [
"vad",
"silero",
"fireredvad",
"speech",
"audio",
]
categories = [
"multimedia::audio",
"science",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/uqio/firered-vad"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
_bench-internals = []
_debug-features = []
bundled = []
coreml = ["ort/coreml"]
cuda = ["ort/cuda"]
default = ["bundled"]
directml = ["ort/directml"]
openvino = ["ort/openvino"]
rocm = ["ort/rocm"]
serde = [
"dep:serde",
"dep:humantime-serde",
]
tensorrt = ["ort/tensorrt"]
[lib]
name = "firered_vad"
path = "src/lib.rs"
bench = false
[[example]]
name = "detect_file"
path = "examples/detect_file.rs"
required-features = ["bundled"]
[[example]]
name = "streaming"
path = "examples/streaming.rs"
required-features = ["bundled"]
[[test]]
name = "integration_test"
path = "tests/integration_test.rs"
[[bench]]
name = "feature_extract"
path = "benches/feature_extract.rs"
harness = false
required-features = [
"bundled",
"_debug-features",
]
[[bench]]
name = "kernels"
path = "benches/kernels.rs"
harness = false
required-features = [
"bundled",
"_bench-internals",
]
[[bench]]
name = "push_samples"
path = "benches/push_samples.rs"
harness = false
required-features = ["bundled"]
[dependencies.humantime-serde]
version = "1"
optional = true
[dependencies.ort]
version = "=2.0.0-rc.12"
[dependencies.rustfft]
version = "6"
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
[dependencies.thiserror]
version = "2"
[dev-dependencies.hound]
version = "3"
[dev-dependencies.serde_json]
version = "1"
[target.'cfg(not(target_family = "wasm"))'.dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
default-features = false
[lints.rust]
missing_docs = "deny"
single_use_lifetimes = "warn"
[lints.rust.rust_2018_idioms]
level = "warn"
priority = -1
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
"cfg(tarpaulin)",
"cfg(firered_vad_force_scalar)",
"cfg(firered_vad_disable_avx512)",
"cfg(firered_vad_disable_avx2)",
]
[profile.bench]
opt-level = 3
lto = "thin"
codegen-units = 1
debug = 0
debug-assertions = false
overflow-checks = false
incremental = false