The radio calls out a channel as you land on it. Clips live in
web/sounds/voice and are named after the channel — lower case, anything
that is not a letter or digit becomes an underscore. Name the file right and it just
plays; there is nothing to register.
If you would rather not download one at a time, this script renders every channel on your own machine with the same Windows voice. Set the path at the top and run it in PowerShell.
web/sounds/voice and set
Config.VoiceAnnounce.ext = 'mp3' once — the radio then looks for
.mp3 instead of .ogg. The existing shipped clips stay as they are.
Dispatch alert tones are entries in Config.Dispatch.alertTones.
They are either a recording you drop in web/sounds, or a tone the radio
generates from frequencies — build one below, hear it, and copy the line.
Paste it into Config.Dispatch.alertTones in
config/config.lua. Order is the order they appear on the panel.
Drop the file into web/sounds/ and
reference it by name. It is fetched at play time, so nothing else needs editing —
the manifest already ships web/sounds/**/*.
{ label = 'Station Page', file = 'my_page.ogg' },
If the file is missing the radio says so in F8 rather than failing
silently: alert tone missing: web/sounds/…