Four Ways to Get Your Mac Talking

This post is part of a series that revisits some of our readers’ favorite articles from the past that still contain awesome and relevant information that you might find useful. This post was originally published on July 16th, 2011.

When I was a kid playing around on my first Mac, I always thought it was loads of fun to have the computer read out whatever I’d written in KidPix (remember KidPix?). On my grown-up Macbook, I sometimes set up spoken alarms and alerts, so that I can imagine Stephen Hawking is telling me what time it is.

However, if you want to convert longer passages of text to speech, you might be in for some quality time with the command line (more on that later). There’s a decent amount of professional text-to-speech software out there, but it’s generally expensive, and mostly intended for business use or for people with disabilities. Today we’re going to go over some free and inexpensive options, and learn how to convert text to speech using TextEdit or the Terminal.

Like the article? You should subscribe and follow us on twitter.

1. Software

A quick Google search reveals fewer free options than I expected, given that text-to-speech is a native mac capability. Some of the highlights:

TypeIt ReadIt

TypeIt ReadIt is a free application with a simplistic interface aimed at the visually impaired, with a font-size slider and text-viewing options. This app is also useful for quickly making text more readable by changing color, size, and fonts, and offers 1-click conversion to .aiff.

None of these apps are going to win any awards for interface design, but despite it’s unattractive appearance, TypeIt ReadIt was my favorite app of those I looked due to its extensive keyboard shortcuts.

TypeIt ReadIt's less-than-polished interface

TypeIt ReadIt’s less-than-polished interface

Read4Me

Read4Me is an app recently available at the Mac App store, and is by far the most Mac-like application I found. Like similar apps, Read4Me is basically just a graphical interface for what your Mac can already do, but does offer a more pleasant experience than some of the other options.

In addition to reading text and exporting .aiff files, Read4Me has a “Coach” feature, which lets you add markers to the text to “help” the reader read more accurately. These features were a bit confusing to me, and I don’t think a lot of them worked. However, I was able to add pauses, mark passages to be read more quickly or slowly, and change the pitch of the voice (which almost always ends badly). Some of the other options seemed to either do nothing or just cause the reader to spell out words instead of reading them.

Read4Me with the coaching window

Read4Me with the coaching window

Read4Me can also open .txt, .rtf, .doc and .docx files and read them out loud. At $4.99, it doesn’t do a whole lot more for your money, but I’m sure some people will find that the few extra features are worth a couple of dollars. My primary complaint here is the lack of keyboard shortcuts.

2. Web Apps

I looked through a bunch of web apps and lists of web apps, but I couldn’t find a good one that allowed you to easily export to a sound file. If you’re just looking to have a couple lines of text read out loud, try the AT&T text-to-speech website, cepstral.com, or vosMe which allows you to download mp3 files of your text.

Text to Speech on the Mac

Mac computers have had advanced text-to-speech technology called PlainTalk built in since System 7, and the voices have improved quite a bit in the last few releases.

Snow Leopard introduced the “Alex” voice, which is much more natural sounding than any previous system voices (“Vicki” is the most natural female voice, “Fred” is the sci-fi, Stephen Hawking-like voice).

Select the “Alex” voice for the most natural-sounding reading.

3. Using TextEdit

To enable the “add to iTunes as spoken track” action from the services menu in TextEdit, open up System Preferences/Keyboard pick Services in the left column, and tick the checkbox for add to iTunes as spoken track under Text. Now when you select text in TextEdit, the option will be there under TextEdit/Services, and will ask you to name and save the file, then open it in iTunes.

Enabling the text-to-iTunes service from System Preferences

Enabling the text-to-iTunes service from System Preferences

Selecting the text to iTunes service

Selecting the text to iTunes service

Additionally, you can have TextEdit read any text file or selection to you by selecting Edit>Speech>Start Speaking from the menu.

4. In the Terminal

My new favorite Terminal command is “say,” sometimes my roommate and I creep each other out by cranking up the volume on our MacBooks and telling Terminal to say things when it’s really quiet. To get your Mac to say anything, just type “say” and then whatever you want.

say Hello World

To have a text file read out loud, just navigate to the directory and type “say -f” and the file name (the file must be UTF-8 encoded).

say -f text.txt

To convert a text file right into a .aiff file, type “say -f” then the file name, then “-o” and the path to the file you want to create.

say -f text.txt -o audio.aiff

Conclusion

While researching for this article, I was pretty surprised both by how powerful my computer’s native text-to-speech capabilities were, and by the lack of free or cheap third-party options. Though it’s pretty easy to convert text to speech using TextEdit or Terminal, you’d think that someone would have made a nice graphical interface for those functions, since they’re already built in.

There are a lot of much more powerful, expensive options out there, with more advanced speech rendering and exporting options, but for the average user, OSX ships with everything you need.

Do you think it’s worth $4.99 to do what your Mac already does a bit more conveniently? What do you use text-to-speech for? Has anybody created a simple AppleScript or Automator action to convert text to audio quickly? Let me know if I’ve missed any free or affordable text-to-speech options!


  • Mike Wallbridge

    Interesting article. I use text-to-speech sometime to read parts of the novel I’m writing to check for missing words etc. But within Scrivener, my app of choice, I can select text and choose Edit – Speech. I’m looking forward to Lion with the greater choice of high quality voices. Alex is fine but as a Brit I would be happier with a British accent.

  • http://www.lri.me Lauri Ranta

    An example script:

    #!/bin/bash
    voices=”Alex;Bruce;Fred;Junior;Ralph;Agnes;Princess;Vicki;Victoria;Albert;Bad News;Bahh;Bells;Boing;Bubbles;Cellos;Deranged;Good News;Hysterical;Pipe Organ;Trinoids;Whisper;Zarvox”
    IFS=”;”
    s=”push me. and then just touch me. till I can get my. satisfaction”
    for v in $voices; do
    say “[[rate 170]] $s” -v “$v” -o “~/Desktop/$v.aiff”
    # osascript -e “say \”$s\” using \”$v\” saving to \”$HOME/Desktop/$v.aiff\”"
    done

  • http://friendsofmac.net Chris C Brunner

    My wife’s friend is blind, so any HC accessible feature like this would be a huge benefit.

    -Chris
    FOM

  • http://modernisten.co.vu/ Robin Lundgren

    Go to: Mac OS X HDD > Developer > Applications > Utilities > Speech. In that folder you will find “Reapeat After Me.app” which looks like this:
    http://cl.ly/1h2w0t1u0Z2c231h171K

    Really advanced ways of making your text to speech sound authentic or ridiculous :)

    • Tessa Thornton

      Wow, that’s really cool! I can’t believe I never came across that in my research. Seems pretty advanced!

  • http://www.internet-gokken.be/ Internet Gokken

    I played a bit with the different free options, and I must say that I’m still not satisfied with the quality. I tried to make my Mac to read an ePub, but it just takes to much energy to focus on the computer voice.

  • Alex

    Hello,
    SpeakLine is a FREE option of Read4Me also available on Mac App Store:
    http://itunes.apple.com/us/app/speakline/id441968334?mt=12

    I works perfect and have a nice user interface!!!
    I really recommend it to you :)

  • http://nataliav.me Natalia Ventre

    Good article, Tessa, I didn’t know that it’s possible to save as an audio file. I use text-to-speech when I’m too tired to read and also to listen to text books while I’m working, now I think I’m going to sync some spoken tracks with the iPod.

  • http://www.fatherstime.com Spencer

    I think the coolest voice add-on is Infovox iVox by AssistiveWare & Acapela Group. The voices sound very life-like and with a few tweaks they can be incredible! They have plenty of different voices (even a british speaker). I found them a few years go and the quality is far better than Alex. Its not cheap, so expense might be an issue ($99.00) Its SL compatible and they have demos on their website. Check them out, http://www.assistiveware.com

  • Mark

    I use Narrator quite a bit when I want to have multiple voices read the screenplay I’m working on. It works pretty slick.

    http://www.marinersoftware.com/products/narrator/

    Mark

  • Pingback: Five Hidden Gems From the Developer Folder | Mac.AppStorm

  • Pingback: Five Hidden Gems From the Developer Folder | Apple World

  • Pingback: Five Hidden Gems From the Developer Folder | Design City

  • Pingback: Five Hidden Gems From the Developer Folder « Software « Leimbienk Software

  • name

    Try this iTunes Announcer Applescript:

    http://dougscripts.com/itunes/scripts/ss.php?sp=itunesannouncer

    It announces track names seamlessly as you play music in iTunes, reducing the volume level while announcing and then restoring the volume. Really sounds almost like a radio DJ.

  • http://andreadimar.co Andrea

    I like Toau: http://toauapp.com

  • William Johnson

    “TypeIt ReadIt is a free application with a simplistic interface…”

    No, you mean it has a simple interface. Don’t try to sound smart by using words you don’t understand. It just makes you sound dumb and pretentious.

theatre-aglow
theatre-aglow
theatre-aglow
theatre-aglow