IRC text to speech using the Festival Speech Synthesis System
© Gareth Watts, December 1998
ircspeak is a small Perl script designed to be used with
to act as a
bridge between it and the
Using it allows you to listen to IRC conversations rather than just reading them. This turns
out to be quite useful if you want to get on with something else whilst IRC'ing.
sirc is a powerful, fast and programmable IRC client written in Perl and C for UNIX systems.
Other frontends are available for it, including ksirc,
which provides a neat KDE interface.
The script has been tested using Linux, but it should work on any system that
supports Festival and sirc.
December 26th 1998 - v0.2 released.
See the top part of the script for a complete list
Darxus has written a similar script for Irc II
available here .
Bits to download
- Either sirc
- The Festival Speech
Synthesis System. Pre-compiled binaries are available for some platforms,
but it compiles easily enough anyway.
- The ircspeak.pl script
- An empty yoghurt pot
- Double sided sticky tape
Putting it all together
Follow the respective instructions for installing Festival and sirc. You may
want to try the different voices available for Festival since the quality
varies quite a bit between them. Some of them are quite sizeable downloads,
but it's worth it :-)
Edit the ircspeak.pl script in a text editor and make sure that the $festival
and $self variables are set correctly for your system and that the path
to the Perl interpreter is correct on the first line.
Create or edit your .sircrc file in your home directory and add one line to it:
Obviously change ~/ircspeak.pl to wherever the script it installed on your system.
Fire up sirc and connect to your favourite channel. Don't pick one which is too
busy else you will probably find that the synthesiser falls behind.
Use the /speechon command to start the synthesiser and /speechoff
to turn it off again.
That's it! Assuming that you've already verified that Festival works, you should
now be hearing all of your net-friends talking to you, sounding almost exactly as they
would in real life given a suitably large quantity of illicit material to consume :->
Advanced users guide
(or "good grief, doesn't it do anything else?")
You can control the quantity of speech output by giving a series of letters to
the /speechon command. For example "/speechon ac" will only convert public chat
and actions in the current channel to speech. "/speechon acp" will also speak
any private messages sent to you to speech.
Further details can be found by typing "/help speechon" from sirc.
c - Speak public chat typed to the channel
a - Speak public actions typed to the channel
p - Speak private messages sent to you
e - Announce general events that happen in the channel
d - Announce DCC events
There is also a "/speak <text>" command which will just speak whatever you type as <text>
If you open ircspeak.pl in your text editor again, you'll see that there is a list
of word substitutions near the top. IRC abounds with abbreviations like brb, imho, thx,
etc which really doesn't make much sense if spoken literally. This list just expands
some of those abbreviations. Feel free to comment out or add to the list.
As of v0.2, you can force ircspeak to re-read this list from the perl file
whilst you are using the script by issuing the /reread command to sirc.
Also as of v0.2 there is a spelling-correction hash which works in a similar
way to the abbreviation translator. Thanks to Dax Kelson
for supplying the idea along with a considerable number of entries for the table!
Perhaps you could email in any useful additions.
Please email email@example.com with
feedback and submissions related to the script.
Please refer to the festival/sirc/ksirc pages & authors for queries about their
Last modified: Saturday, December 26th 1998