diff --git a/Cargo.lock b/Cargo.lock index cd9980a..9a15428 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3331,6 +3331,7 @@ dependencies = [ "toml 0.9.11+spec-1.1.0", "unic-langid", "vosk", + "webrtc-vad", "winrt-notification", ] @@ -8598,6 +8599,15 @@ dependencies = [ "rustls-pki-types", ] +[[package]] +name = "webrtc-vad" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39a1e40fd6ca90be95459152a2537f2ba4286ee1b13073f7ebcaa74fc94e3008" +dependencies = [ + "cc", +] + [[package]] name = "webview2-com" version = "0.38.2" diff --git a/Cargo.toml b/Cargo.toml index 4d540c3..d3ea1d2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -53,4 +53,5 @@ ndarray = "0.17" tokenizers = { version = "0.22", default-features = false } regex = "1" sys-locale = "0.3" +webrtc-vad = "0.4" diff --git a/crates/jarvis-core/Cargo.toml b/crates/jarvis-core/Cargo.toml index f315975..3c908e4 100644 --- a/crates/jarvis-core/Cargo.toml +++ b/crates/jarvis-core/Cargo.toml @@ -24,6 +24,7 @@ parking_lot.workspace = true toml.workspace = true sha2.workspace = true nnnoiseless = { workspace = true, optional = true } +webrtc-vad = { workspace = true, optional = true } tokio-tungstenite = { workspace = true, optional = true } futures-util = { workspace = true, optional = true } fluent.workspace = true @@ -58,7 +59,9 @@ default = ["jarvis_app"] jarvis_app = [ "vosk", "intent-classifier", "fastembed", "tokio", "nnnoiseless", "tokio-tungstenite", "futures-util", "lua", "llm", - "ort", "ndarray", "tokenizers", "regex",] + "ort", "ndarray", "tokenizers", "regex", + "webrtc-vad", +] intent = ["intent-classifier", "tokio"] lua = ["mlua", "reqwest", "winrt-notification"]