Nybble Processing Mainframe
    Wondering what’s next for npm?Check out our public roadmap! »

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

    2.0.2 • Public • Published

    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

    Method Options (all optional) Return Type Handle Long Text
    getAudioUrl lang, slow, host string
    getAudioBase64 lang, slow, host, timeout Promise<string>
    getAllAudioUrls lang, slow, host, splitPunct { shortText: string; url: string; }[]
    getAllAudioBase64 lang, slow, host, timeout, splitPunct Promise<{ shortText: string; base64: string; }[]>

    Options (all optional)

    Option Type Default Description
    lang string en See all avaiable language code at https://cloud.google.com/speech/docs/languages
    slow boolean false Use the slow audio speed if set slow to true
    host string https://translate.google.com You can change the host if the default host could not work in your region (e.g. https://translate.google.com.cn).
    timeout number 10000 (ms) (Only for getAudioBase64 and getAllAudioBase64) Set timeout for the HTTP request.
    splitPunct string (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

    Install

    npm i google-tts-api

    DownloadsWeekly Downloads

    2,865

    Version

    2.0.2

    License

    MIT

    Unpacked Size

    48.8 kB

    Total Files

    29

    Last publish

    Collaborators

    • avatar