A modern, offline voice analysis tool that predicts speaker characteristics based on acoustic features.
- 🎨 Modern Interface - Clean, intuitive GUI with modern design
- 🔄 Multi-Model Support - Switch between different trained models in real-time
- 💾 Fully Offline - No internet required after initial setup
- 🎤 Multiple Formats - Supports WAV, MP3, OGG, FLAC, M4A
- 📦 Easy Installation - Simple pip install, models auto-download
- Python 3.8 - 3.13 (Python 3.14+ not yet supported - dependencies
numba/llvmlitedon't support 3.14. Use Python 3.13 or earlier) - ~500 MB disk space (including models and dependencies)
- Internet connection for first-time model download only
pip install voicemd-guiThen run:
voicemd-guiModels (~4.4 MB) will automatically download from GitHub Releases on first launch.
If you want the latest development version:
pip install git+https://github.com/Honey181/voicemd.git- Download the repository as ZIP from GitHub
- Extract it
- Open terminal in the extracted folder
- Run:
pip install . - Run:
voicemd-gui
If you prefer to run from source:
# Clone the repository
git clone https://github.com/Honey181/voicemd.git
cd voicemd
# Install dependencies
pip install -r requirements_app.txt
# Run the app
python app_gui.pyModels will auto-download on first run, or manually run:
python download_models.py- Select a model from the dropdown (Small Dataset or CommonVoice)
- Browse for an audio file (WAV, MP3, OGG, FLAC, M4A)
- Click "Analyze Voice"
- View results instantly
pip uninstall voicemd-gui -yThe model files (~4.4 MB) are stored separately and will remain after uninstalling. To completely remove them:
Windows:
Remove-Item -Recurse -Force "$env:USERPROFILE\.voicemd"macOS/Linux:
rm -rf ~/.voicemdLocation of models:
- When installed via pip:
~/.voicemd/models/(or%USERPROFILE%\.voicemd\models\on Windows) - When running from source: Project root directory
VoiceMD includes two trained models that can be switched at runtime:
- Small Dataset Model - Faster, good for general use
- CommonVoice Model - More robust, handles diverse accents
Switch between models using the dropdown in the app. No restart required!
Download manually:
- Go to https://github.com/Honey181/voicemd/releases
- Download both
.ptmodel files - Place them in the project root directory
Or use the download script:
python download_models.pyUpdate dependencies:
pip install --upgrade -r requirements_app.txtThe app uses soundfile/librosa (no FFmpeg required). If you still get errors:
- Windows:
choco install ffmpeg - macOS:
brew install ffmpeg - Linux:
sudo apt install ffmpeg
If you get an error like llvmlite only officially supports LLVM 20 during installation:
Option 1 - Use Conda (Recommended):
conda create -n voicemd python=3.10
conda activate voicemd
conda install -c conda-forge llvmlite numba
pip install git+https://github.com/Honey181/voicemd.gitOption 2 - Install specific LLVM version:
# Ubuntu/Debian
sudo apt install llvm-14 llvm-14-dev
export LLVM_CONFIG=/usr/bin/llvm-config-14
pip install git+https://github.com/Honey181/voicemd.gitOption 3 - Use older Python:
# Python 3.9 or 3.10 have better llvmlite compatibility
python3.10 -m pip install git+https://github.com/Honey181/voicemd.git- Framework: PyTorch for model inference
- GUI: Tkinter for cross-platform interface
- Audio Processing: librosa, soundfile, torchaudio
- No FFmpeg Required: Uses soundfile/librosa for audio loading
MIT License - Copyright (c) 2020, Jeremy Pinto
See LICENSE file for full details.
Original Project: VoiceMD by @jerpint (Jeremy Pinto)
Enhanced by: @Honey181 - Modern UI and easy installation
This project builds upon the excellent work of the original VoiceMD team. All credit for the model architecture, training pipeline, and core functionality goes to them.
Contributions are welcome! Please feel free to submit a Pull Request.