npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@andresaya/edge-tts

v1.2.4

Published

Edge TTS is a package that allows access to the online text-to-speech service used by Microsoft Edge without the need for Microsoft Edge, Windows, or an API key.

Downloads

196

Readme

Edge TTS

Edge TTS is a powerful Text-to-Speech (TTS) package that leverages Microsoft's Edge capabilities. This package allows you to synthesize speech from text and manage voice options easily through a command-line interface (CLI).

Features

  • Text-to-Speech: Convert text into natural-sounding speech using Microsoft Edge's TTS capabilities.
  • Multiple Voices: Access a variety of voices to suit your project's needs.
  • Audio Export Options: Export synthesized audio in different formats (raw, base64, or directly to a file).
  • Command-Line Interface: Use a simple CLI for easy access to functionality.
  • Easy Integration: Modular structure allows for easy inclusion in existing projects.

Installation

You can install Edge TTS via npm. Run the following command in your terminal:

bun add @andresaya/edge-tts
npm install @andresaya/edge-tts

Usage

Command-Line Interface

You can install Edge TTS via npm. bun Run the following command in your terminal:

npm install -g @andresaya/edge-tts
bun install --global edge-tts

To synthesize speech from text, use the following command:

edge-tts synthesize -t "Hello, world!" -o hello_world_audio

To list available voices, run:

edge-tts voice-list

Integration into Your Project To use Edge TTS in your Bun project, you can import it like this:

import { EdgeTTS } from '@andresaya/edge-tts';

// Initialize the EdgeTTS service
const tts = new EdgeTTS();

// Get voices
const voices = await tts.getVoices();  
console.log(voices);  // Display available voices

// Synthesize text with options for voice, rate, volume, and pitch
await tts.synthesize("Hello, world!", 'en-US-AriaNeural', {
    rate: '0%',       // Speech rate (range: -100% to 100%)
    volume: '0%',     // Speech volume (range: -100% to 100%)
    pitch: '0Hz'      // Voice pitch (range: -100Hz to 100Hz)
});

// Export synthesized audio in different formats
tts.toBase64();   // Get audio as base64
await tts.toFile("output_audio");       // Save audio to file
await tts.toRaw();         // Get raw audio buffer

Export Options

After synthesizing speech, you can export the audio in various formats:

  • toBase64: Returns the audio as a Base64 string.
  • toFile: Saves the audio to a specified file (e.g., "output.wav").
  • toRaw: Returns the raw audio stream.

PHP Version

If you want to use Edge TTS with PHP, you can check out the PHP version of this package, Edge TTS PHP

License

This project is licensed under the GNU General Public License v3 (GPLv3).

Acknowledgments

We would like to extend our gratitude to the developers and contributors of the following projects for their inspiration and groundwork:

  • https://github.com/rany2/edge-tts/tree/master/examples
  • https://github.com/rany2/edge-tts/blob/master/src/edge_tts/util.py
  • https://github.com/hasscc/hass-edge-tts/blob/main/custom_components/edge_tts/tts.py