HoloSTT
Overview
HoloSTT is a modern, thread-safe speech recognition and input manager for Python applications. It unifies active speech, ambient listening, and keyboard input into a single, production-ready interface for any AI-driven project.
Highlights:
- Multi-modal input: Seamlessly combine voice (active/ambient) and keyboard input.
- No vendor lock-in: Works with any skill set, AI stack, or backend logic.
- Advanced audio handling: Adaptive noise management, energy thresholds, platform-aware volume support.
- Thread-safe singleton: Designed for multi-threaded and interactive desktop, assistant, and automation apps.
- Real-time text processing: Built-in cleaning, comparison, and input filtering utilities.
Why HoloSTT?
Typical speech recognition modules often come with limitations:
- Limited to just microphone input, or just keyboard.
- Lack of fallback modes, or forced use of a single speech engine.
- Not suitable for multi-threaded apps, or lacking input state management.
HoloSTT solves these problems by:
- Offering both active (“push-to-talk”) and ambient (always-on) listening, with instant keyboard fallback.
- Providing a centralized, extensible interface for all input and recognition events.
- Supporting robust error handling, state tracking, and dynamic configuration—ready for modern AI workflows.
Key Features
-
Flexible Audio Capture: Toggle between active/ambient listening or switch to keyboard input instantly.
-
Dynamic Noise and Volume Handling: Automatically adapts to background noise and adjusts thresholds for clear, accurate recognition.
-
Centralized State & Properties: Track commands, input modes, timeouts, and all key settings in one place.
-
Customizable Input Processing: Clean and filter input text, apply replacements, compare similarity, and trigger actions.
-
Robust Error Handling: Handles microphone, audio, and network exceptions gracefully.
-
Production-Ready: Built for real-world, scalable AI systems.
How It Works
- Call the HoloSTT manager in your application.
- Select input mode: active voice, ambient voice, or keyboard.
- Process and clean recognized text automatically.
- Use output directly for commands, automations, or AI skills.
FAQ
Q: Does HoloSTT require a specific folder or class naming? A: No. Organize your project and input logic as you see fit.
Q: Can I use my own text cleaning or filtering? A: Yes. HoloSTT exposes all processing utilities and is easy to extend.
Q: Is it production-ready and thread-safe? A: Yes. The singleton implementation ensures safe multi-threaded operation.
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
Release files for HoloSTT 0.2.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| holostt-0.2.4.tar.gz | 11.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| holostt-0.2.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.9 kB
Release files / holostt-0.2.4.tar.gz
| Download URL | holostt-0.2.4.tar.gz |
|---|---|
| Size | 11.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b1e222b3f019425dcfcaa6ac85a86a8d7b0a4b5c1788f16da29bdc4b71b71a5c
|
|
BLAKE2b-256 checksum How to use checksums |
1bd40926eead92fe3629a55b36cb8be88e9bfd7ab940787f5ba1959f3b2deded
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.3
|
Release files / holostt-0.2.4-py3-none-any.whl
| Download URL | holostt-0.2.4-py3-none-any.whl |
|---|---|
| Size | 11.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2a3234435509827ebee2b4d01268c03519b67da670fdb3c2d21128821165d205
|
|
BLAKE2b-256 checksum How to use checksums |
d0be6061120591384591aa3507ebb6ab4e1c47c40e835bd0a2ede97b1ef9a80c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.3
|