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

0.0.2 • Public • Published

RxJS wrapper for Text-to-Speech

npm i rxjs-tts

Try it online: https://stackblitz.com/edit/rxjs-tts?file=index.ts

About

This is a RxJS wrapper around browser native SpeechSynthesis.

It provides handy interface for chaining and aborting TTS.

Usage

import { speak } from 'rxjs-tts';
 
speak('Hello!').subscribe();

Chained

import { speak } from 'rxjs-tts';
 
concat(
  speak('Hello, mom!'),
  speak('How are you?'),
  speak('I miss you.')
)
  .subscribe();

Advanced usage

import { of, merge, concat, timer } from "rxjs";
import { map, takeUntil } from "rxjs/operators";
import { speak, SpeechSynthesisUtteranceConfig } from "rxjs-tts";
 
const a: string = "Hello, mom!";
 
const b: SpeechSynthesisUtteranceConfig = {
  text: "How are you?",
  lang: "en-UK",
  pitch: 1,
  rate: 1,
  volume: 1
};
 
const c = new SpeechSynthesisUtterance("I miss you");
c.rate = 1;
c.lang = "en-US";
c.pitch = 1;
c.rate = 1;
c.volume = 1;
 
concat(
  speak(a),
  speak(b),
  speak(c)
)
.subscribe((e: SpeechSynthesisEvent) => {
  console.log(e.name);
  console.log(e.type);
});

Package Sidebar

Install

npm i rxjs-tts

Weekly Downloads

7

Version

0.0.2

License

MIT

Unpacked Size

25.2 kB

Total Files

15

Last publish

Collaborators

  • kosich