I asked Claude AI to find me a voice keyer written in python 3 so I could eventually add it to FDLog_Enhanced.
Instead it wrote one in minutes. I then gave it to Claude Code to sweat over.
You got your choice! A female robot to seduce QSOs or record your own voice.
A standalone voice keyer for amateur radio operators. Assign voice messages to F1-F8 keys using text-to-speech or your own recorded audio.
- 8 programmable F-key slots (F1-F8) for quick message playback
- Text-to-Speech mode - type a message and have it spoken automatically
- Recording mode - record your own voice for each slot (requires
sounddeviceandsoundfile) - Per-slot mode switching - mix TTS and recorded messages across slots
- Adjustable speed and volume for TTS playback
- Keyboard shortcuts - press F1-F8 to play, Escape to stop
- Persistent settings - messages, modes, and voice settings saved between sessions
- Preloaded examples - one-click load of common amateur radio messages (CQ, signal reports, etc.)
- Standalone executable - build a single .exe with PyInstaller
- Python 3.7+
pyttsx3(required)sounddevice(optional, enables recording)soundfile(optional, enables recording)numpy(optional, required with sounddevice)
The app works in TTS-only mode if sounddevice/soundfile are not installed.
git clone https://github.com/scotthibbs/Voice_Keyer.git
cd Voice_Keyer
pip install -r requirements.txtTo enable recording support:
pip install sounddevice soundfile numpypython voice_keyer_tts.py- Type a message into any F-key slot and press Play or the corresponding F-key
- To use a recorded message, toggle the slot to Rec mode, click Record, speak, then click Stop
- Adjust TTS speed and volume with the sliders
- Press Escape to stop any playback
Recordings are saved as WAV files in ~/.voice_keyer_recordings/.
Settings are saved to ~/.voice_keyer_tts_config.json.
python build.pyThis produces Voice_Keyer_TTS.exe (Windows) using PyInstaller.
MIT