Modern STT AND TTS for modern AI-projects
Project description
HoloEcho
Overview
HoloEcho is a thread-safe, modular orchestrator for voice, sound, and keyboard-driven interaction in Python applications. It unifies text-to-speech, speech recognition, audio signaling, and multi-modal input/output management—making it ideal for next-generation AI assistants, agent frameworks, and productivity tools.
Highlights:
- Modular design: Seamlessly integrates HoloTTS (text-to-speech), HoloSTT (speech input), and HoloWave (sound playback).
- Multi-modal input/output: Switch instantly between voice, keyboard, and ambient interaction.
- Custom command mapping: Flexible phrase recognition and user-definable command sets.
- Thread-safe singleton: Robust for multi-threaded, event-driven, and long-running applications.
- Production-ready: Centralized error handling, channel management, and extensible APIs.
Why HoloEcho?
Voice-first and multi-modal applications demand more than simple speech-to-text or TTS. HoloEcho brings together advanced voice recognition, TTS, audio feedback, and stateful input management—enabling:
- Natural switching between voice and keyboard modes.
- Real-time audio cues and contextual feedback.
- Easy addition of new commands and phrase triggers.
- Seamless orchestration of all sound and voice resources.
Key Features
-
Unified Input Management: Handle active/ambient voice, keyboard input, and quick mode switches from a single class.
-
Custom Command Mapping: Map any phrase to custom actions or mode changes—user commands are merged with defaults for maximum flexibility.
-
Integrated Audio Feedback: Play sound cues and synthesize voice output using HoloTTS and HoloWave.
-
Stateful Operation: Tracks activation, standby, pause, and mode status for robust agent-like interaction.
-
Thread-Safe Singleton: Safe for concurrent access and automation workflows.
How It Works
- Instantiate HoloEcho in your application.
- Configure commands and phrases as needed (or use the built-in defaults).
- Handle input and output via integrated methods (
voiceInput,ambientInput,keyboardInput,synthesize,getSound). - Switch modes and manage agent state using built-in command recognition.
FAQ
Q: Do I need to manage TTS, speech recognition, and sound playback separately? A: No. HoloEcho wraps and orchestrates HoloTTS, HoloSTT, and HoloWave for you.
Q: Can I add or override commands and phrases? A: Yes. Pass your own command dictionary or phrases; HoloEcho will merge them with defaults.
Q: Is HoloEcho thread-safe and suitable for production? A: Yes. The singleton and locking mechanisms make it robust for advanced apps.
Code Examples
You can find code examples on my GitHub repository.
License
This project is licensed under the Apache License, Version 2.0. Copyright 2025 Tristan McBride Sr.
Authors
- Tristan McBride Sr.
- Sybil
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file holoecho-0.2.2.tar.gz.
File metadata
- Download URL: holoecho-0.2.2.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f2977f352e6f49433019c40428e20a2b0191dcc6b9b7d55082110390c285794c
|
|
| MD5 |
03ed53adba53e9558fa50ef47e7233df
|
|
| BLAKE2b-256 |
e05ebb38e5d90b39ed707ce01dbaf7fdae89e7eb21bdfc19c3d94997c89414c8
|
File details
Details for the file holoecho-0.2.2-py3-none-any.whl.
File metadata
- Download URL: holoecho-0.2.2-py3-none-any.whl
- Upload date:
- Size: 10.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d3cc90ef234c39ab782bac4911df9cb07fb4c8750c37cb2665895244f19c9aa9
|
|
| MD5 |
fdfc1214a39ea66a8cf9e46b9c2bc6f4
|
|
| BLAKE2b-256 |
d22063284002c9e134c7f6e99d195a08ced39d07ac6480d9b43f7490483613c3
|