Awesome
TeToS
<!--index start-->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<br>speech_region : Azure Speech service region |
Google TTS | Enable the Text-to-Speech API in the Google Cloud Console<br>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)<br>secret_key : Volcengine access secret key. (Get it here)<br>app_key : Volcengine app key |
Baidu TTS | api_key : Baidu API key<br>secret_key : Baidu secret key<br>Both can be acquired at the console |
Minimax TTS | api_key : Minimax API key<br>group_id : Minimax group ID<br>Both can be acquired at the Minimax console |
迅飞 TTS | app_id : Xunfei APP ID<br>api_key : Xunfei API key<br>api_secret : Xunfei API secret |
Fish Audio | api_key : Fish Audio API key |
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
- Google TTS
- SSML support