Better Play HT support (voices)
# support
m
PlayAI/PlayHT has some great voices. And the list of voices in PlayHT API seems outdated, and the restriction on custom voice ID seems like a unintended bug that prevents entering valid custom values. Here is an example of prebuilt voice that I can find on PlayHT website (Play3.0 Mini) Arabic voice: Maryem Voice ID:
s3://voice-cloning-zero-shot/d44b758a-f3e7-4a7c-af50-02451c7101f4/original/manifest.json
But on the Dashboard and API (see screenshot), this is rejected. I believe the root cause is there are differences in the documentation of PlayAI and PlayHT. But the voice file format and Models are actually the same (Play3.0-Mini) You can use this reference to check for full list of supported voices in Play3.0-mini https://docs.play.ai/api-reference/text-to-speech/voices I have done validation using my own API Keys, and confirmed that using PlayAI prebuilt voices in PlayHT API is perfectly fine.
Copy code
bash
curl --location 'https://api.play.ht/api/v2/tts/stream' \
--header 'AUTHORIZATION: <API Key>' \
--header 'X-USER-ID: <API User ID>' \
--header 'Accept: audio/mpeg' \
--header 'Content-Type: application/json' \
--data '{
  "voice": "s3://voice-cloning-zero-shot/d44b758a-f3e7-4a7c-af50-02451c7101f4/original/manifest.json",
  "output_format": "mp3",
  "language": "arabic",
  "voice_engine": "Play3.0-mini",
  "text": "صباح الخير! معك فاطمة من مستشفى كينجز كوليدج دبي. كيف يمكنني مساعدتك اليوم؟"
}'
Recommended changes to Vapi Dashboard. 1. Allow custom voice ID for PlayHT voices to skip validation. Assume that the user knows what they are doing. 2. Please add Language dropdown/input when using Play3.0 Mini models. The language param in API is important for the voices to work. @Sahil @Shubham Bajaj https://cdn.discordapp.com/attachments/1337895656307556412/1337895657083764768/image.png?ex=67a91bed&is=67a7ca6d&hm=9368166dc285c6ac091308363a54eedaefe8fa530707007c6a745dd3a7397954& https://cdn.discordapp.com/attachments/1337895656307556412/1337895657834414130/image.png?ex=67a91bed&is=67a7ca6d&hm=be207614d6b7be5d634ccf2ca00da3db825c003789a5d1aabaf06555cca3e9e9& https://cdn.discordapp.com/attachments/1337895656307556412/1337895658186866750/image.png?ex=67a91bed&is=67a7ca6d&hm=bc03acba1a499138abf5e84a175b9436ee162b7fccf58c89298ef9b0093e8804&
On a side note: +1 Wishlist for PlayHT's PlayDialog model. https://docs.play.ht/reference/models#playdialog
Notes on implementing Language support: The language of the voice. Only supported when voice_engine is set to Play3.0-mini or PlayDialog, and voice has 2.0 engine or later. **This is API param a string type and expects the actual language name. Please refer to the updated API Doc https://docs.play.ht/reference/api-generate-tts-audio-stream
s
Hey @Max , added this to our roadmap but currently we are swamped with on-going work on dashboard + workflows. Will let you know once it is available.
3 Views