Modern Sound manager for modern AI-driven applications.
Project description
HoloWave
Overview
HoloWave is a modern, thread-safe audio playback manager for Python applications. It provides robust, low-latency sound signaling, channel management, and cross-platform fallbacks for automation, agent systems, and productivity tools.
Highlights:
- Low-latency sound playback: Instantly play any supported audio file with minimal delay.
- Thread-safe singleton: Designed for multi-threaded, interactive, or automated applications.
- Custom sound mapping: Associate sounds with keys or events for rapid notification and feedback.
- Automatic cross-platform fallback: Produces a system beep if audio hardware or files are unavailable.
- Flexible channel management: Control mixer channels, output routing, and concurrency with ease.
Why HoloWave?
Standard sound modules are often limited to blocking playback, lack robust error handling, or require boilerplate for channel management.
HoloWave solves these problems by:
- Providing a centralized, extensible interface for all sound playback.
- Robust error handling and fallback signaling on any OS.
- Supporting channel-based playback for overlapping or grouped sounds.
- Ensuring safe operation in multi-threaded or interactive environments.
Key Features
-
Simple Sound Playback: Play any loaded audio file by key, with non-blocking channel control.
-
Cross-Platform Support: Uses
pygamefor playback, with built-in system beep fallback. -
Custom Sound Mapping: Map sound files to any integer or string keys for quick event-driven playback.
-
Thread-Safe Singleton: Safe to use across threads or in long-running service applications.
-
Robust Error Handling: Handles missing files, mixer errors, and hardware issues gracefully.
How It Works
- Instantiate HoloWave in your Python application.
- Map sounds to keys or events in your app logic.
- Trigger playback by calling
getSound(key)from any thread or event handler. - Automatically falls back to system beep if playback fails.
FAQ
Q: Does HoloWave require a specific folder or class naming? A: No. Organize your project and sound files as you see fit.
Q: Can I use HoloWave for overlapping or concurrent sounds? A: Yes. Channel management allows for multiple simultaneous sounds.
Q: Is HoloWave thread-safe and production-ready? A: Yes. The singleton implementation and locking ensure safe use in all environments.
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.
Acknowledgments
Project by:
- 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 holowave-0.1.1.tar.gz.
File metadata
- Download URL: holowave-0.1.1.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f704997fe1652f825cdead1b78423828034efd14d7ee698c9378f4bfbe801859
|
|
| MD5 |
e5fee106e92bef8538d3ad57ee783b23
|
|
| BLAKE2b-256 |
c9537c52850f8fbfb08c358d8e4db20e621f29a7141fe4bd089e97362d7001d7
|
File details
Details for the file holowave-0.1.1-py3-none-any.whl.
File metadata
- Download URL: holowave-0.1.1-py3-none-any.whl
- Upload date:
- Size: 4.2 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 |
be27ba92d98ebd293ca715121e293c947d11378a1020b70bcba1922241ef5ecd
|
|
| MD5 |
de3b3f2f742f15dd095176cce894cfdd
|
|
| BLAKE2b-256 |
d72d18f4ddba5546c49e90a604a468b0f4ff349e41353cc9cf7d65cdab74ed96
|