2.0.2 • Published 3 years ago

google-tts-api v2.0.2

Weekly downloads
2,923
License
MIT
Repository
github
Last release
3 years ago

google-tts

Google TTS (Text-To-Speech) for node.js

Installation

$ npm install --save google-tts-api
$ npm install -D typescript @types/node # Only for TypeScript

Change Log

Please see CHANGELOG.

Usage

MethodOptions (all optional)Return TypeHandle Long Text
getAudioUrllang, slow, hoststring
getAudioBase64lang, slow, host, timeoutPromise<string>
getAllAudioUrlslang, slow, host, splitPunct{ shortText: string; url: string; }[]
getAllAudioBase64lang, slow, host, timeout, splitPunctPromise<{ shortText: string; base64: string; }[]>

Options (all optional)

OptionTypeDefaultDescription
langstringenSee all avaiable language code at https://cloud.google.com/speech/docs/languages
slowbooleanfalseUse the slow audio speed if set slow to true
hoststringhttps://translate.google.comYou can change the host if the default host could not work in your region (e.g. https://translate.google.com.cn).
timeoutnumber10000 (ms)(Only for getAudioBase64 and getAllAudioBase64) Set timeout for the HTTP request.
splitPunctstring(Only for getAllAudioUrls and getAllAudioBase64) Set the punctuation to split the long text to short text. (e.g. ",、。")

Examples

1. getAudioUrl(text, [option])

import * as googleTTS from 'google-tts-api'; // ES6 or TypeScript
const googleTTS = require('google-tts-api'); // CommonJS

// get audio URL
const url = googleTTS.getAudioUrl('Hello World', {
  lang: 'en',
  slow: false,
  host: 'https://translate.google.com',
});
console.log(url); // https://translate.google.com/translate_tts?...

2. getAudioBase64(text, [option])

import * as googleTTS from 'google-tts-api'; // ES6 or TypeScript
const googleTTS = require('google-tts-api'); // CommonJS

// get base64 text
googleTTS
  .getAudioBase64('Hello World', {
    lang: 'en',
    slow: false,
    host: 'https://translate.google.com',
    timeout: 10000,
  })
  .then(console.log) // base64 text
  .catch(console.error);

3. getAllAudioUrls(text, [option]) (For text longer than 200 characters)

import * as googleTTS from 'google-tts-api'; // ES6 or TypeScript
const googleTTS = require('google-tts-api'); // CommonJS

const results = googleTTS.getAllAudioUrls('LONG_TEXT_...', {
  lang: 'en',
  slow: false,
  host: 'https://translate.google.com',
  splitPunct: ',.?',
});
console.log(results);
// [
//   { shortText: '...', url: '...' },
//   { shortText: '...', url: '...' },
//   ...
// ];

4. getAllAudioBase64(text, [option]) (For text longer than 200 characters)

import * as googleTTS from 'google-tts-api'; // ES6 or TypeScript
const googleTTS = require('google-tts-api'); // CommonJS

googleTTS
  .getAllAudioBase64('LONG_TEXT_...', {
    lang: 'en',
    slow: false,
    host: 'https://translate.google.com',
    timeout: 10000,
    splitPunct: ',.?',
  })
  .then(console.log)
  // [
  //   { shortText: '...', base64: '...' },
  //   { shortText: '...', base64: '...' },
  //   ...
  // ];
  .catch(console.error);

More Examples

License

MIT

2.0.2

3 years ago

2.0.1

3 years ago

2.0.0

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.4

5 years ago

0.0.3

6 years ago

0.0.2

7 years ago

0.0.2-alpha.1

7 years ago

0.0.1

8 years ago

0.0.0-alpha

8 years ago