
Installing say.js
npm install say
Usage
// automatically pick platformconst say = // or, override the platformconst Say = Sayconst say = 'darwin' || 'win32' || 'linux' // Use default system voice and speedsay // Stop the text currently being spokensay // More complex example (with an OS X voice) and slow speedsay // Fire a callback once the text has completed being spokensay; // Export spoken audio to a WAV filesay
Methods
Speak:
- Speed: 1 = 100%, 0.5 = 50%, 2 = 200%, etc
say
Export Audio:
- MacOS / Windows Only
- Speed: 1 = 100%, 0.5 = 50%, 2 = 200%, etc
say
Stop Speaking:
say
Get List of Installed Voice(s):
say
Feature Matrix
Unfortunately every feature isn't supported on every platform. PR's welcome!
Platform | Speak | Export | Stop | Speed | Voice | List |
---|---|---|---|---|---|---|
macOS | ✅ | ✅ | ✅ | ✅ | ✅ | 🚫 |
Linux | ✅ | 🚫 | ✅ | ✅ | ✅ | 🚫 |
Windows | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
macOS Notes
Voices in macOS are associated with different localities. To a list of voices and their localities run the following command:
say -v "?"
As an example, the default voice is Alex
and the voice used by Siri is Samantha
.
Windows Notes
None.
Linux Notes
Linux support requires Festival. As far as I can tell there is no sane way to get a list of available voices. The only voice that seems to work is voice_kal_diphone
, which seems to be the default anyway.
The .export()
method is not available.
Try the following command to install Festival with a default voice:
sudo apt-get install festival festvox-kallpc16k
Requirements
- Mac OS X (comes with
say
) - Linux with Festival installed
- Windows (comes with SAPI.SpVoice)
- Needs to have Powershell installed and available in $PATH (see issue #75)