Kindle 3 — arbitrary text to speech

This post briefly summarises an experiment with the built in text-to-speech (TTS) capabilities of my Kindle 3.

Direct to  /var/tmp/ttsUSFifo

The K3 includes a built-in TTS capability that can be turned on to read your books to you. It is turned on via the text menu (“Aa” button) when reading a book, or via the keyboard shortcut  “Shift+Sym”.

Turns out that if you enable TTS via  “Shift+Sym” (rather than the “Aa” menu) then stop TTS by pressing the “Back” key (another keyboard shortcut) the TTS subsystem stays partially active and may be utilised by other processes running inside the K3.

Normally this would be fairly useless trivia. But if you’ve jailbroken your K3 and enabled SSH access (either via USB or WiFi) you can login remotely and have arbitrary text strings read out loud by the K3. Or launch processes that ‘speak’ certain text at particular times.

The key is sending ASCII text to /var/tmp/ttsUSFifo

For example, the following causes the K3 to greet me by name:

 [root@kindle root]# echo "Hello There Grenville Armitage" > /var/tmp/ttsUSFifo

Neat! And yes, a range of common not-safe-for-work phrases are articulated quite clearly.

(But note, this appears to be true only if the TTS subsytem has been  activated via “Shift+Sym” and then deactivated with “Back”. And sometimes the system seems to ‘swallow’ the first syllable of the text you sent to /var/tmp/ttsUSFifo. I’m sure there’s some more detailed info floating around regarding the use and abuse of the K3’s TTS subsystem.)

Using ‘say’

A bit more googling and I stumble across the ‘say’ command (/usr/bin/say), so

say "Hello Grenville"

greets me, rather like ‘echo “Hello Grenville” >  /var/tmp/ttsUSFifo’ would do.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: