Training speech models (Whisper, TTS, voice cloning) often breaks down because of dirty audio data: clipping, DC offset, background noise, low SNR, and duplicate samples quietly inflating validation metrics.
I built WaveWash to automate audio quality control and data prep so developers don't have to write one-off scripts or manually listen to thousands of audio files.
What WaveWash Does
- Tuned Presets: Built-in profiles for ASR (Whisper), TTS, Speaker ID, and Music Generation.
- Safe Auto-Repairs: Corrects DC offset, mild clipping, and normalizes loudness (EBU R128).
-
Automated Segregation:
-
clean/: Audio that passed all checks. -
_error/: Rejected files categorized by reason (low_snr/,clipping/, etc.). -
_duplicates/: Exact and near-duplicates set aside (nothing is deleted). -
_logs/: Complete audit logs (CSV, JSON, and Markdown summaries).
-
- Zero-Config Local Web UI: Ships directly inside the Python package — no Node.js build required.
- Non-Destructive: Your original files are never modified.
Quick Start
Install and launch the local web UI in two commands:
bash
pip install wavewash
wavewash app
It opens your browser at http://127.0.0.1:8420.
You can also run it directly from the terminal:
wavewash run --input ./raw_audio --output ./clean_audio --purpose asr
Links
PyPI: https://pypi.org/project/wavewash/
GitHub: https://github.com/BoobalanArjunan/wavewash
It's currently in early alpha (v0.1.0a1). Feedback, issues, and feature suggestions are very welcome!
Top comments (0)