Skip to content

v2.1.0 — speaker_wav alias for vllm parity

Choose a tag to compare

@fakehec fakehec released this 17 Apr 23:14
· 12 commits to main since this release

Additive minor release. No behaviour change for existing clients.

What changed

The multipart handler for /v1/audio/speech now accepts speaker_wav as an alias for the canonical custom_voice_file field. Symmetric with uttera-tts-vllm v1.1.0.

# Canonical (unchanged from every previous release):
curl -F custom_voice_file=@sample.wav ...

# New in v2.1.0 — alias works too:
curl -F speaker_wav=@sample.wav ...

If both fields are present on the same request, custom_voice_file wins. Same semantics either way — stateless adhoc voice cloning, upload lives for the single request and is never persisted on disk.

Why

So the same client-side adhoc voice-cloning code works against either Uttera TTS backend (uttera-tts-hotcold or uttera-tts-vllm) without having to know which one it is hitting:

# This one curl works unchanged against both backends:
curl -X POST $UTTERA_TTS/v1/audio/speech \
  -F input="Hola mundo" \
  -F custom_voice_file=@my_voice.wav \
  -F response_format=mp3 \
  -o out.mp3

Compatibility

Purely additive. All existing clients using custom_voice_file keep working unchanged.