KarmaComputing / tts-server

Text to speech (TTS) server set-up
1 stars 0 forks source link

As a developer using the api I can set the language of my request #14

Closed chrisjsimpson closed 2 years ago

chrisjsimpson commented 2 years ago

Is your feature request related to a problem? Please describe. Currently the api assumed English. This is a problem for other languages!

Some models / vocoders support multiple languages.

As a developer using the api I can set the language of my request

Describe the solution you'd like

When I do a request with a "?lang=" ISO 639-1 language code, then the api tries to use a models / vocoders which supports that language

e.g.

curl https://api.example.com/submit?lenguage=fr

Would be a request for french

Describe alternatives you've considered

Additional context Not all models /language / vocodor pairs exist

chrisjsimpson commented 2 years ago

The current supported languages in the pre-trained models appear to be:

tts --list_models

Name format: type/language/dataset/model
 1: tts_models/multilingual/multi-dataset/your_tts
 2: tts_models/en/ek1/tacotron2
 3: tts_models/en/ljspeech/tacotron2-DDC [already downloaded]
 4: tts_models/en/ljspeech/tacotron2-DDC_ph
 5: tts_models/en/ljspeech/glow-tts [already downloaded]
 6: tts_models/en/ljspeech/speedy-speech
 7: tts_models/en/ljspeech/tacotron2-DCA
 8: tts_models/en/ljspeech/vits
 9: tts_models/en/ljspeech/fast_pitch [already downloaded]
 10: tts_models/en/vctk/vits
 11: tts_models/en/vctk/fast_pitch
 12: tts_models/en/sam/tacotron-DDC
 13: tts_models/es/mai/tacotron2-DDC
 14: tts_models/fr/mai/tacotron2-DDC
 15: tts_models/uk/mai/glow-tts
 16: tts_models/zh-CN/baker/tacotron2-DDC-GST
 17: tts_models/nl/mai/tacotron2-DDC
 18: tts_models/de/thorsten/tacotron2-DCA
 19: tts_models/ja/kokoro/tacotron2-DDC
 20: tts_models/tr/common-voice/glow-tts
 21: tts_models/it/mai_female/glow-tts
 22: tts_models/it/mai_female/vits
 23: tts_models/it/mai_male/glow-tts
 24: tts_models/it/mai_male/vits
 25: tts_models/ewe/openbible/vits
 26: tts_models/hau/openbible/vits
 27: tts_models/lin/openbible/vits
 28: tts_models/tw_akuapem/openbible/vits
 29: tts_models/tw_asante/openbible/vits
 30: tts_models/yor/openbible/vits
 1: vocoder_models/universal/libri-tts/wavegrad
 2: vocoder_models/universal/libri-tts/fullband-melgan
 3: vocoder_models/en/ek1/wavegrad
 4: vocoder_models/en/ljspeech/multiband-melgan
 5: vocoder_models/en/ljspeech/hifigan_v2 [already downloaded]
 6: vocoder_models/en/ljspeech/univnet [already downloaded]
 7: vocoder_models/en/vctk/hifigan_v2
 8: vocoder_models/en/sam/hifigan_v2
 9: vocoder_models/nl/mai/parallel-wavegan
 10: vocoder_models/de/thorsten/wavegrad
 11: vocoder_models/de/thorsten/fullband-melgan
 12: vocoder_models/ja/kokoro/hifigan_v1
 13: vocoder_models/uk/mai/multiband-melgan
 14: vocoder_models/tr/common-voice/hifigan

Example running German language tts by selecting de language model

tts --text "Hallo wie gehts?" --model_name "tts_models/de/thorsten/tacotron2-DCA" --out_path ./speech.wav
chrisjsimpson commented 2 years ago

Example call

curl -L 'https://api.example.com/submit?lang=de'   --data-raw 'text=Hallo+wie+gehts+es+dir?'   --compressed > out.wav
github-actions[bot] commented 2 years ago

:rocket: Issue was released in v0.0.14 :rocket: