Tetos Documentation

PyPI Python License Downloads Documentation Status

A unified interface for multiple Text-to-Speech (TTS) providers.

Supported TTS providers

Provider

Requirements

Edge-TTS

-

OpenAI TTS

api_key: OpenAI API key

Azure TTS

speech_key: Azure Speech service key
speech_region: Azure Speech service region

Google TTS

Enable the Text-to-Speech API in the Google Cloud Console
Set env var GOOGLE_APPLICATION_CREDENTIALS as the path to the service account key file

Volcengine TTS(火山引擎)

access_key: Volcengine access key ID. (Get it here)
secret_key: Volcengine access secret key. (Get it here)
app_key: Volcengine app key

Baidu TTS

api_key: Baidu API key
secret_key: Baidu secret key
Both can be acquired at the console

Minimax TTS

api_key: Minimax API key
group_id: Minimax group ID
Both can be acquired at the Minimax console

Installation

Tetos requires Python 3.8 or higher.

pip install tetos

CLI Usage

tetos PROVIDER [PROVIDER_OPTIONS] TEXT [--output FILE]

Please run tetos --help for available providers and options.

Examples

tetos google "Hello, world!"
tetos azure "Hello, world!" --output output.mp3   # save to another file
tetos edge --lang zh-CN "你好,世界!"  # specify language
tetos openai --voice echo "Hello, world!"  # specify voice

API Usage

Use Azure TTS as an example:

from tetos.azure import AzureSpeaker

speaker = AzureSpeaker(speech_key='...', speech_region='...')
speaker.say('Hello, world!', 'output.mp3')

The initialization parameters may be different for other providers.

Work behind a proxy

TeTos respects the proxy environment variables HTTP_PROXY, HTTPS_PROXY, ALL_PROXY and NO_PROXY.

TODO

  • [x] Google TTS

  • [ ] SSML support

License

Apache License 2.0

Reference