Files
can1357 7cae7ef3f5 feat(voice): replaced miniaudio with native platform audio backends
- Replaced the miniaudio dependency with custom OS audio device abstractions and backends.
- Implemented platform-specific audio playback and capture for macOS (Audio Queue), Windows (WASAPI), and Linux (PulseAudio/ALSA).
- Added a fallback stub backend returning errors for unsupported platforms.
- Updated audio stream handling with reliable fill guard wakeups and streamlined rate validation.
2026-08-07 23:38:27 +02:00

31 lines
973 B
Python

load("@crates//:defs.bzl", "aliases", "all_crate_deps")
load("@rules_rust//rust:defs.bzl", "rust_library", "rust_test")
package(default_visibility = ["//visibility:public"])
exports_files(["Cargo.toml"])
# napi-free voice engine (in-house capture/playback backends + WebRTC/Opus live
# peer). Keeping the webrtc/opus graph behind this rlib means the pi_natives
# leaf — which recompiles on every release (version-sentinel edit in lib.rs) —
# no longer pays for the voice stack's monomorphization.
rust_library(
name = "pi-voice",
srcs = glob(["src/**/*.rs"]),
aliases = aliases(),
crate_name = "pi_voice",
edition = "2024",
proc_macro_deps = all_crate_deps(proc_macro = True),
version = "17.1.5",
deps = all_crate_deps(normal = True),
)
rust_test(
name = "pi-voice_test",
crate = ":pi-voice",
edition = "2024",
proc_macro_deps = all_crate_deps(proc_macro_dev = True),
deps = all_crate_deps(normal_dev = True),
)