Skip to content

0.6.0 — Tiger speaks, all twenty-three voices

Choose a tag to compare

@tgeczy tgeczy released this 18 Aug 04:11
· 229 commits to main since this release

The first public release, and the first that has been through real users on real machines.

Apple's engine runs as native code. No virtual machine, no emulator, no CPU translation — a 32-bit host process maps Tiger's Intel MacinTalk into memory and calls SESpeakBuffer directly. An utterance costs about twelve milliseconds.

What you get

All twenty-three voices from Mac OS X 10.4, across the three engines in that bundle:

  • MacinTalk 3 — Fred as he sounded in 2005, plus Kathy, Princess, Junior, Ralph, Whisper, Zarvox, Trinoids and the novelty and singing voices
  • MacinTalk Pro — Bruce, Victoria, Agnes
  • meow — Vicki, who has an engine to herself because her sample bank is AAC

Rate spans 80–400 wpm. Pitch is measured in semitones from each voice's own natural pitch, so the middle of the slider is the voice as Apple recorded it. Embedded speech commands ([[slnc 500]], [[volm 0.5]], even [[inpt TUNE]] for singing) all work, and are off by default so a web page containing two square brackets cannot change how your screen reader sounds.

No Apple software is distributed here

package.py refuses to build an add-on containing any. You supply your own Tiger install, and tools/extract_tiger.py pulls the engine out of your own disc image.

Put the extracted tree in %APPDATA%\nvda\tigerspeech-data\not in the add-on folder, because updating an add-on deletes and recreates its directory.

Fixed in 0.6.0, both found by users

  • Windows 7's AAC decoder returns one frame fewer than Windows 10 and 11 do, which put Vicki's audio 1024 samples out of place and ran her syllables together. The host now flushes each decoder's own latency rather than inferring it, so the version of Windows no longer matters.
  • The singing voices went permanently silent on long text. They render several times more audio per character than the rest, so an ordinary long message tripped a guard meant to catch a stalled pipeline — and tripping it stopped the engine's clock. The same bug had been silently truncating long messages with those voices for as long as they have worked; Good News now renders a post in full where it used to stop halfway.

Requirements

NVDA 2023.1 or later, 32-bit or 64-bit. Vicki additionally needs an AAC decoder, which every edition of Windows ships except N and KN until the Media Feature Pack is installed; where it is absent she is left out of the voice list rather than offered and silent.