voice-core
Shared low-level audio primitives for the kevin voice service and the
autonet (autonet-computer[voice]) VoiceService. Both repos used to carry
their own copy of this code; this package is the single source of truth so fixes
land once.
What's here
| Module | Contents |
|---|---|
voice_core.audio |
AudioMixer, AudioChannel (real-time mixing, ducking, fade, per-channel pause), find_device, get_device_list, resample |
voice_core.tts |
generate_kokoro / generate_edge / generate_elevenlabs / generate_piper; set_kokoro_model_dir, set_piper_module_dir |
voice_core.stt |
PushToTalkRecorder (duck/mute modes, 30s release-timeout safeguard), transcribe (faster-whisper) |
voice_core.tones |
make_tool_tone, make_result_chime, make_startup_chime, make_failure_tone, gen_tone |
voice_core.text |
strip_markdown (markdown + emoji stripping for TTS), tool_summary, tool_narration |
What's not here
Architecture-specific glue stays in each repo:
- kevin: UDP instance registry, hooks, window focus, clipboard paste, overlay,
main() - autonet:
VoiceServiceclass, EventBus wiring,VoiceConfig
Install
pip install -e . # core only (numpy + sounddevice)
pip install -e .[full] # all TTS backends + PTT/STT
Heavy deps (kokoro-onnx, edge-tts, miniaudio, requests, keyboard, faster-whisper) are lazy-imported, so the core imports cheaply and each backend only errors (with an install hint) when used without its dependency.
Configuring model/voice paths
The Kokoro model files (kokoro-v1.0.onnx, voices-v1.0.bin) and the Piper
voice package live outside this repo. Point at them at startup:
import voice_core
voice_core.set_kokoro_model_dir(r"c:\code\kevin") # holds the .onnx + .bin
voice_core.set_piper_module_dir(r"c:\code\voice") # holds the `voice` package
Release files for autonet-voice-core 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| autonet_voice_core-0.1.0.tar.gz | 12.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| autonet_voice_core-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.4 kB
Release files / autonet_voice_core-0.1.0.tar.gz
| Download URL | autonet_voice_core-0.1.0.tar.gz |
|---|---|
| Size | 12.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
92f9e4a08f54e03d5a37e2e63c3cd9b62e32ff9a806cbc240ae9be621e736462
|
|
BLAKE2b-256 checksum How to use checksums |
b8c71cd88b140544b81805aac8afa33f08c50b3f5f283545b76f868e1e91bb9e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.3
|
Release files / autonet_voice_core-0.1.0-py3-none-any.whl
| Download URL | autonet_voice_core-0.1.0-py3-none-any.whl |
|---|---|
| Size | 14.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9d333c4b3a3a3bd6f4c8d6026e7cf46d882f0c4778d141426438a4d9c34a3bf0
|
|
BLAKE2b-256 checksum How to use checksums |
529a6e3b348a24adeb266094859bd377aad4f29a00a3b76062128cb2a46c3698
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.3
|