7cae7ef3f5
- 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.
31 lines
973 B
Python
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),
|
|
)
|
|
|