Skip to main content

Hivemind Voice Relay

Project description

HiveMind Voice Relay

License PyPI Python

Local wakeword detection; STT and TTS handled remotely by hivemind-core running the hivemind-audio-binary-protocol plugin.

Voice Relay runs the microphone, VAD, and wakeword engine on-device — keeping wake-word detection private and low-latency — while forwarding audio to hivemind-core (running the hivemind-audio-binary-protocol plugin) for speech-to-text, and receiving synthesised audio back for playback. No STT or TTS models run on the device.

Full documentation: docs/


Satellite spectrum

Satellite Mic VAD Wake word STT TTS Connects to
HiveMind-cli hivemind-core
hivemind-mic-satellite local local server server server core + audio-binary-protocol
HiveMind-voice-relay (this repo) local local local server server core + audio-binary-protocol
HiveMind-voice-sat local local local local local hivemind-core

Voice Relay is the middle-ground: wakeword detection stays on-device (low latency, no audio leaves until activation), while the heavier STT and TTS models run on the server.


Server requirements

⚠️ Your hivemind-core server must have the hivemind-audio-binary-protocol binary plugin installed. Plain hivemind-core does not handle STT or TTS — connecting to it will result in silence (no transcription, no spoken response).

Alternatively, run hivemind-core together with ovos-audio and ovos-dinkum-listener to provide the same capabilities.


Install

pip install HiveMind-voice-relay

60-second quickstart

1. Configure identity (one-time):

hivemind-client set-identity --key YOUR_ACCESS_KEY --password YOUR_PASSWORD --host wss://your-listener-host

2. Run:

hivemind-voice-relay

3. Speak your wake word. The default wake word is hey mycroft (configured in ~/.config/mycroft/mycroft.conf).


CLI flags

Usage: hivemind-voice-relay [OPTIONS]

  connect to hivemind-core running the audio binary protocol

Options:
  --host TEXT      hivemind host (ws:// or wss://)
  --key TEXT       Access Key
  --password TEXT  Password for key derivation
  --port INTEGER   HiveMind port number (default: 5678)
  --selfsigned     Accept self-signed TLS certificates
  --siteid TEXT    Location identifier for message context
  --help           Show this message and exit.

All flags fall back to values stored by hivemind-client set-identity.


Configuration

Voice Relay reads ~/.config/mycroft/mycroft.conf (standard OVOS config).

Plugin type Config key Default Required
Microphone microphone.module ovos-microphone-plugin-alsa Yes
VAD listener.VAD.module ovos-vad-plugin-silero Yes
Wake word listener.wake_word hey_mycroft Yes
G2P tts.g2p_module No
Media Playback Audio.backends No
OCP Plugins No
Dialog Transformers No
TTS Transformers No
PHAL No (auto-loaded if installed)

See docs/configuration.md for full details and plugin swap instructions.


Features and limitations

Built on ovos-simple-listener. Compared to the full voice-satellite:

Present:

  • Microphone capture, VAD, wakeword detection — all local
  • Audio forwarded to hivemind-core (hivemind-audio-binary-protocol plugin) for STT (base64-encoded WAV over the HiveMessage bus)
  • TTS audio synthesised server-side and streamed back for local playback
  • PHAL (platform hardware abstraction) auto-loaded if installed
  • Standard OVOS plugin system for mic, VAD, and wakeword

Not supported (use HiveMind-voice-sat if you need these):

  • Local STT / TTS plugins
  • Audio Transformers
  • Continuous / Hybrid / Recording / Sleep listening modes
  • Multiple wake words

Related

Project Role
hivemind-audio-binary-protocol Required hivemind-core plugin — provides server-side STT + TTS
hivemind-core Base mesh node (no STT/TTS)
HiveMind-cli Text-only satellite
hivemind-mic-satellite Thinnest audio satellite (no local wakeword)
HiveMind-voice-sat Full local stack satellite
hivemind-bus-client HiveMind WebSocket client library
ovos-simple-listener Lightweight listener library used internally

License

Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hivemind_voice_relay-1.1.0a1.tar.gz (13.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hivemind_voice_relay-1.1.0a1-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

Details for the file hivemind_voice_relay-1.1.0a1.tar.gz.

File metadata

  • Download URL: hivemind_voice_relay-1.1.0a1.tar.gz
  • Upload date:
  • Size: 13.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for hivemind_voice_relay-1.1.0a1.tar.gz
Algorithm Hash digest
SHA256 88d52423fe2dd1e0c97dc905e3176ca021ab4360a07b8c786576648f811d2098
MD5 9680a3fff4b7a5b33990c85a1d064da5
BLAKE2b-256 202a5492dcf40f2736b718d897ca125d8dcd520624fbaf0caa6bf20195fb8658

See more details on using hashes here.

File details

Details for the file hivemind_voice_relay-1.1.0a1-py3-none-any.whl.

File metadata

File hashes

Hashes for hivemind_voice_relay-1.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 01c096a364d30194a19cd0a54f6c652d89a7afab9b7df38938fe250f2dc26bc8
MD5 9724f548aa8cc508d6230ae0bbb53a73
BLAKE2b-256 2c15d9ca4b2830fb51f2b28718d92eb329773e52dfbc071fca6a0f8ae37e8887

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page