4.0.1 • Published 10 days ago

@capacitor-community/text-to-speech v4.0.1

Weekly downloads
65
License
MIT
Repository
github
Last release
10 days ago

Maintainers

MaintainerGitHubSocial
Robin Genzrobingenz@robin_genz

Installation

npm install @capacitor-community/text-to-speech
npx cap sync

Android

According to the Android documentation, apps targeting Android 11 should declare TextToSpeech.Engine.INTENT_ACTION_TTS_SERVICE in the queries elements of their manifest:

<queries>
  <intent>
    <action android:name="android.intent.action.TTS_SERVICE" />
  </intent>
</queries>

Here you can find an example commit.

Configuration

No configuration required for this plugin.

Demo

A working example can be found here: robingenz/capacitor-plugin-demo

Usage

import { TextToSpeech } from '@capacitor-community/text-to-speech';

const speak = async () => {
  await TextToSpeech.speak({
    text: 'This is a sample text.',
    lang: 'en-US',
    rate: 1.0,
    pitch: 1.0,
    volume: 1.0,
    category: 'ambient',
  });
};

const stop = async () => {
  await TextToSpeech.stop();
};

const getSupportedLanguages = async () => {
  const languages = await TextToSpeech.getSupportedLanguages();
};

const getSupportedVoices = async () => {
  const voices = await TextToSpeech.getSupportedVoices();
};

const isLanguageSupported = async (lang: string) => {
  const isSupported = await TextToSpeech.isLanguageSupported({ lang });
};

API

speak(...)

speak(options: TTSOptions) => Promise<void>

Starts the TTS engine and plays the desired text.

ParamType
optionsTTSOptions

stop()

stop() => Promise<void>

Stops the TTS engine.


getSupportedLanguages()

getSupportedLanguages() => Promise<{ languages: string[]; }>

Returns a list of supported BCP 47 language tags.

Returns: Promise<{ languages: string[]; }>


getSupportedVoices()

getSupportedVoices() => Promise<{ voices: SpeechSynthesisVoice[]; }>

Returns a list of supported voices.

Returns: Promise<{ voices: SpeechSynthesisVoice[]; }>


isLanguageSupported(...)

isLanguageSupported(options: { lang: string; }) => Promise<{ supported: boolean; }>

Checks if a specific BCP 47 language tag is supported.

ParamType
options{ lang: string; }

Returns: Promise<{ supported: boolean; }>


openInstall()

openInstall() => Promise<void>

Verifies proper installation and availability of resource files on the system.

Only available for Android.


Interfaces

TTSOptions

PropTypeDescriptionDefault
textstringThe text that will be synthesised when the utterance is spoken.
langstringThe language of the utterance. Possible languages can be queried using getSupportedLanguages."en-US"
ratenumberThe speed at which the utterance will be spoken at.1.0
pitchnumberThe pitch at which the utterance will be spoken at.1.0
volumenumberThe volume that the utterance will be spoken at.1.0
voicenumberThe index of the selected voice that will be used to speak the utterance. Possible voices can be queried using getSupportedVoices.
categorystringSelect the iOS Audio session category. Possible values: ambient and playback. Use playback to play audio even when the app is in the background. Only available for iOS."ambient"

SpeechSynthesisVoice

The SpeechSynthesisVoice interface represents a voice that the system supports.

PropTypeDescription
defaultbooleanSpecifies whether the voice is the default voice for the current app (true) or not (false).
langstringBCP 47 language tag indicating the language of the voice.
localServicebooleanSpecifies whether the voice is supplied by a local (true) or remote (false) speech synthesizer service.
namestringHuman-readable name that represents the voice.
voiceURIstringType of URI and location of the speech synthesis service for this voice.

Changelog

See CHANGELOG.md.

License

See LICENSE.

4.0.1

10 days ago

4.0.0

24 days ago

3.0.1

9 months ago

3.0.0

1 year ago

2.1.0

1 year ago

2.0.1

2 years ago

2.0.0

2 years ago

1.1.3

2 years ago

1.1.2

2 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.0

3 years ago

0.2.3

3 years ago

0.2.2

3 years ago

0.2.1

4 years ago

0.2.0

4 years ago

0.1.3

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago