So far, Festival is the only Text to Speech App that I can get to work on my Fedora 13 System. But, it is a Pain since it is a Command Line App. The "festival --tts myfile.txt" command worked fine. But it sounds like Crap!:O The Commands in this Article did get me up and Seeking - Listening though. At first I kept getting errors on the file I was trying to listen to. But then I remembered that Linux Command line Apps don't like File names with Spaces in them. So I renamed the file and added "-" where the spaces were and then Festival Spoke to me just fine. I tried the "less myfile.pdf | festival --tts" Commands (from the comments) and Festival did play my PDF file. But it was reading some kind of hidden Text or the Code in the file, I'm not sure. But it was saying "000010000..." forever. The "CTRL-Z and restart by typing 'bg' or 'fg" Helped out allot in that instance. Kept me from throwing something through my Monitor! After Listening to that Droning Festival Voice for about 30 Seconds:O I have heard much better Speech Voices in my Past Linux Systems and I have to admit that the Windows Text to Speech Apps work great and Sound Much Much Better since 1998! But I still haven't found the Apps I use to use. Or I have just forgotten how I set the others like KMouth up to work back when I was running Fedora 7 and Debian a few of years ago...
Don
January 24, 2006
Don
January 24, 2006
Festival - A Text to Speech synthesis software in Linux
What is Festival ?
Festival is a free text to speech synthesizer developed by the Center for Speech Technology Research at the University of Edinburgh.
It is shipped with most Linux distributions and has been released under an X11-type license allowing unrestricted commercial and non-commercial use alike.
Text to speech synthesizer is a computer program that converts normal language text into speech.
Coming home after a hard day at work after staring at the monitor continuously for hours on end, the last thing I want to do many days is sit in front of the computer again. At times though, I have this urge to grab a book and do some light reading but often the strain on my eyes dissuades me in pursuing this thought any further. This is where this very nice utility called Festival comes into the picture.
Festival TTS Basic Usage
When you run festival, it converts the contents of a text file into voice. For example, if I want to read a letter (mail) which is residing in a text file (say letter.txt). I can let festival read it out loud for me as follows:
$ festival --tts letter.txt
One way I put this utility to good use is when I download a book in text format from Project Gutenberg. I start festival, close my eyes, relax and follow the narration.
Festival - A Few More Examples
Festival can be put to use in other ways too. For example, you can use it in batch process mode without any user interaction.
If festival is started with out passing any command line parameters, you are dropped into a shell where you can make festival read out what ever text you type on the command line. For instance, check the following examples:
$ festival festival> (SayText "Greetings from linuxhelp.blogspot.com")
You can ask Festival to read a text file for you.
festival> (tts "myfile.txt")
Pros & Cons of Festival
Pros- Available for Free under an open source license.
- The quality of the voice and the pronunciations are very good.
- Supports 3 languages - English, Spanish, and Welsh.
- When it encounters a word not in its vocabulary, it tends to spell the word rather than pronounce it.
- At present, it works only on text files. So if you intend to read a PDF document using festival, it won't work.
Festival is a very good text to speech synthesizer (converter). And it is available at an unbeatable price (Free).
28 comments:
Go there...http://linuxhelp.blogspot.com/2006/01/festival-text-to-speech-synthesis.html
- Fedora Linux text to speech
- fedora linux text to speech - Google Search
- Festival - A Text to Speech synthesis software in Linux | All about Linux
- ERROR: The requested URL could not be retrieved
- speech to text application fore OpenOffice.org - FedoraForum.org
- Adventures switching from Windows learning and using Fedora Linux, lessons and tips
- Festival
- fedora linux text to speech pdf - Google Search
- Enable festival Linux (text-to-speech-system) to read/speak PDF and DOC files (Speech PDF and DOC in Festival Script) | Walking in Light with Christ - Faith, Computing, Diary
- The Jovie Handbook
- Orca - GNOME Live!
- http://slackware.osuosl.org/slackware-3.3/docs/Emacspeak-HOWTO
- Emacspeak User's Guide
- Gnus Newsreader Homepage
- Festival-gaim
- jovie text to speech - Google Search
- AMR Codec Libraries for GNU-Linux
- CMU Sphinx - Speech Recognition Toolkit
- GpsDrive - a free car (bike, ship, plane) navigation system
- Festvox: Home
- Speex: a free codec for free speech
Don
This is a nice utility. Thanks for explaining it on your blog.
Does it have a GUI front end or something ?
Howard
Washington DC
Thanks for another good article. I did install it but have not tried it till today.
I have HEARD this artical (copied as .txt) now and probably i will be using it regularly.
i know of a nice GUI frontend ;-)
KDE. konqueror supports it, kwrite (so most kde apps that allow text input), and Koffice 1.5 (just entered feature freeze, so it'll be out soon) will support it, too. kttsd (kde text to speech deamon) is an easy to use fronted, with the just mentioned integration in most kde applications.
I tried it in Ubuntu Linux. But I had to first kill the esd daemon before festival will work.
Specifically, I had to do a
$ killall esd
I wonder if any body has encountered this in Ubuntu ?
Ravi,
There is a plugin available for Gaim that interfaces with festival. It allows for instant messages to be spoken by festival so you can hear it thru your speakers.
James
New York
Festival is great, but the one feature that is most important is not mentioned... text2wave. Using text2wave (part of Festival) you can read in a text file, output to .wav and pass it through lame or oggenc. This way one can pause, rewind, and take the audio with you. This does take up some resources, so it's best to split up the files into chapters (not more than 300 lines). Contact me at coathanger3 at netscape d0t net for two perl scripts, one to split the file, one to do a batch encoding. You may also want to run dos2unix against the book file before you split it up when using *nix.
Re: Anonymous 10:05PM
Ubuntu has problems with esd more generally. For instance, to get sound out of most flash animations, one has to killall esd. And of course, to get sound working properly again for the general system, esd has to be restarted. What I want to know is if this kind of problem is encountered, in this or other forms, in different distros.
@ anonymous 11:57 PM
I have been using Fedora core 2 and it does not have this problem. Fedora doesn't use Esd in my knowledge. It uses Alsa direct.
A nice frontend is also perlbox, which can recognise your voice, and do commands, and speak back with festival.
One of the best voice for Festival is cmu_us_slt_arctic_hts which can be found here. More about this on forums.gentoo.org.
@anonymous (1st comment)
If you are using KDE 3.5 (I am not sure if it is there in older versions of KDE), then open konquorer and navigate to the menu Tools > Speak Text
And you will be able to configure festival to read the web page to you. It uses kttsd.
I personally feel that the main problem in such a software is the quality of the voice file.
Although Festival advertises Welsh support, the voice that would allow this does not seem to be generally available, so it is a bit misleading.
so cool man ! thanks
For festival to actually be useful as a book reader it needs a frontend that handles things like pause and resume, navigation (eg. re-read the last paragraph) and especially bookmarking. I found the lack of bookmarking a real nuisance when reading ebooks until I realized that Opera handles that with html formatted texts.
A festival book reader frontend would, for example, feed a paragraph at a time to festival and keep track of the location of this paragraph in the full text to permit navigation and bookmarking.
This sounds like a good project for someone who is a better coder than I am.
For those who are using Ubuntu - I'm using Ubuntu 5.10 and have been using the companion project to Festival called FreeTTS - it's a Java-based utility which can use the Festival voices. Related to FreeTTS (and also sponsored by CMU) is Festvox. I use FreeTTS without having to kill esd.
http://freetts.sourceforge.net/
http://festvox.org/
http://www.speech.cs.cmu.edu/
DarrenR114 AT yahoo dot com
I use Ubuntu 5.10. I have no issues with audio at all- play music, watch movies, flash,and even festival.
I also use Ubuntu 5.10; tried festival from the command line and noticed that it does not recognize accented vowels (á, é, í, ó, ú, ü).
These are essential for correct pronunciation (and intended meaning) in Spanish. Strings containing accented vowels are spelled out while the accented character is merely skipped. Is there a way around this?
On the KDE desktop, I place an ICON with this action:
dcop klipper klipper getClipboardContents | fmt | festival --tts
Then I simply highlight text with the mouse and click the icon. The highlighted text is read to me. Very cool.
Neat, but I couldn't figure out how to download a higher quality voice and start using it.
On Windoze I had AT&T's Natural Voices (with ReadPlease) read books to me. It was great, but the higher quality voices make a big difference.
Most programs can be configured to use ESD. For programs that can't use ESD natively, you have two options (besides killing the esd daemon, of course)
1. Prefix the command you're running with "esddsp ". For example,
$ esddsp festival
This will intercept open() calls that try to access /dev/dsp and route those through esd.
2. Configure esd to release the dsp device after some period of inactivity with the -as option. For example if you pass esd "-as 5", it will release /dev/dsp after 5 seconds of inactivity so that any other program can access it directly. You can set this behavior by default in /etc/esound/esd.conf
Great tip about esd!
edit /etc/esound/esd.conf
turn on auto_spawn=1
this is great and i'm gonna do a project where by i want Festival to support Xhosa as well,i would like to know more about Festival,how it operates and help me to this project
I wrote this little script to read long clipboard texts relatively smoothly without slowing down.
#!/bin/bash
xclip -o |fmt --width=2000 | while read LINE; do
cat << THISSTRINGSHOULDNTHAPPENNATURALLY |festival --tts
$LINE
THISSTRINGSHOULDNTHAPPENNATURALLY
sleep .5
done
Then I just create a link to that script from my toolbar and voila I have a more generic text reader.
Contrary to this article, you can use Festival with PDF files! The "less" command allows you to browse a PDF file, so you can simply pipe its output to festival on the command line:
less myfile.pdf | festival --tts
This will speak the text in myfile.pdf. Similarly, you could pipe the output of a program like 'Antiword' to read Word documents.
As has already mentioned , you can read PDFs with the command
less myfile.pdf | festival --tts
you can then pause by doing a CTRL-Z and restart by typing 'bg' or 'fg' (depending on if you want the process to resume in the background or foreground.
I have installed "Fala" a Graphical User Interface frontend in Ubuntu Gutsy 7.10
A simple software that speaks a text. You can type the text or appoint a file. Fala is just a frontend to festival. It's designed for GNOME, but if you have gtk, pyhton and festival you are able to run it.
Available at sourceforgeDOTnet site. it is quite simple and useful.
Hi. I'm guessing this is scriptable but I also wondered if there's any possibilty of 'teaching' it new words. Way back in the days of the BBC Micro there was a text-to-speech program that allowed you to enter a word using a phonics code and to bind the phonics to a particular spelling (as long as it hadn't been defined already). If this were possible somehow in festival it would clear up quite a few problems. The BBC may have been behind the C64 for graphics but for programmability and expandability it was years ahead of its time (in fact they almost released a version after the BBC Master which had a built in Modem but that was when they started having financial trouble and released them without the modem as normal BBC Masters - our school had some of that model, it didn't have a modem built in but all you had to do was plug the modem in and it was ready to visit the BBSes - unlike other BBCs which needed a lot more configuration).
can anybody suggest me how can i integrate festival to a new application...i.e i want to read an entre file just by one click on the file