nitor-tts
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

Speech synthesis made easy - Browser based text to speech (TTS)

Installation

npm install nitor-tts

Description

Speech synthesis (tts) for the browser. Wrapping the browser Speech Synthesis API (https://developer.mozilla.org/en-US/docs/Web/API/SpeechSynthesis) and providing a similar interface, it improves it by : -> init() has optional paramters for volume,rate and pitch -> speak() converts the text into speech with specified voice

  • handling the fact that Chrome load voices in an asynchronous manner when others browsers don't -> voice list supoort browser specific voice
  • throwing specific exceptions: explicit exceptions will be thrown if you pass parameters with incompatible values to any of the methods

Work in Chrome, Edge and Mozila. See browser support here : http://caniuse.com/#feat=speech-synthesis

Usage

Import the library :

import NitorTTS from 'NitorTTS' // es6

Check for browser support :

speech = new NitorTTS() // will throw an exception if not browser supported
if(speech.hasBrowserSupport()) { // returns a boolean
	console.log("speech synthesis supported")
}

Init the speech component :

init(paremters)

You can pass the following properties to the init function:

  • voice : the voice to use // default is chosen by your browser if not provided
  • lang // default is determined by your browser if not provided
  • volume // optional default is 1
  • rate // optional default 1
  • pitch // optional default 1
// Example with full conf 
init('Microsoft Zira - English (United States)','en-US',1,1);

Read a text :

speech.speak{
	text: 'Hello, how are you today ?'}

You can pass the following properties to the speak function:

  • text: text to be spoken

Pause talking in progress:

Speech.pause()

Resume talking in progress:

Speech.resume()

Cancel talking in progress:

Speech.cancel()

Get boolean indicating if the utterance queue contains as-yet-unspoken utterances:

Speech.pending()

Get boolean indicating if talking is paused:

Speech.paused()

Get boolean indicating if talking is in progress:

Speech.speaking()

Package Sidebar

Install

npm i nitor-tts

Weekly Downloads

0

Version

1.0.0

License

MIT

Unpacked Size

33.1 kB

Total Files

17

Last publish

Collaborators

  • tejapatil