The PUCK GOLD voice booth
Every announcer is a Chatterbox / Qwen voice profile generated locally with Voicebox on a single Mac. No third-party API. Drop a script, run npm run voice:gen, ship the MP3.
Deep, broadcast-grade public-address announcer. Confident, theatrical without overselling. The voice of every PUCK GOLD arena.
Warm, conversational podcast host. Measured cadence with light dry humor. Reads articles like an episode intro — not a robot.
Fast, breathless play-by-play caller with a Miami late-night radio energy. Latin-jazz rhythm. Drops Spanish phrases on big plays. Lives for breakaways.
Calm, intelligent, NPR-clean delivery from the climate-controlled press box. Speaks like a meteorologist who loves the game. Big moments rendered with quiet awe.
Southern-radio drawl from a wood-paneled press box. Steady, story-driven. Treats every game like a freight train pulling out of the station.
DC go-go bassline energy. Punchy, crew-call cadence. Trades off with a beat. Turns every goal into a block party.
| ID | Kind | Voice | Output |
|---|---|---|---|
| league-welcome | league | pg-pa | /audio/league/welcome.mp3 |
| league-intermission | league | pg-pa | /audio/league/intermission.mp3 |
| mmg-intro | team-intro | mmg-booth | /audio/teams/miami-mighty-geckz/intro.mp3 |
| mmg-goal | team-goal | mmg-booth | /audio/teams/miami-mighty-geckz/goal.mp3 |
| mmg-win | team-win | mmg-booth | /audio/teams/miami-mighty-geckz/win.mp3 |
| mcc-intro | team-intro | mcc-booth | /audio/teams/mclean-climate-cardinals/intro.mp3 |
| mcc-goal | team-goal | mcc-booth | /audio/teams/mclean-climate-cardinals/goal.mp3 |
| mcc-win | team-win | mcc-booth | /audio/teams/mclean-climate-cardinals/win.mp3 |
| ctc-intro | team-intro | ctc-booth | /audio/teams/chattanooga-choo-choos/intro.mp3 |
| ctc-goal | team-goal | ctc-booth | /audio/teams/chattanooga-choo-choos/goal.mp3 |
| ctc-win | team-win | ctc-booth | /audio/teams/chattanooga-choo-choos/win.mp3 |
| whm-intro | team-intro | whm-booth | /audio/teams/washington-woomp/intro.mp3 |
| whm-goal | team-goal | whm-booth | /audio/teams/washington-woomp/goal.mp3 |
| whm-win | team-win | whm-booth | /audio/teams/washington-woomp/win.mp3 |
- Install Voicebox on the studio Mac and download the Chatterbox + Qwen3 models from inside the app.
- Drop a 6–15 second reference clip per voice into
public/voices/<id>/ref.wavand import each into Voicebox as a new profile. - Map logical IDs to Voicebox profile UUIDs in
.voicebox-profile-map.json(git-ignored). - Open Voicebox, then run
npm run voice:gen— the script POSTs every line inannouncements.jsontohttp://127.0.0.1:17493/generateand writes the MP3 into this repo underpublic/audio/…. - Commit the audio files. They ship as static assets — no runtime cost.
Full docs at docs/VOICE.md.



