Voice Conversion
Replace the voice in a recording with another voice while keeping its delivery.
Create a task
POST /api/v1/voice-conversion
Content-Type: multipart/form-data
curl https://voiceailabs.com/api/v1/voice-conversion \
-H "Authorization: Bearer $VAL_API_KEY" \
-H "Idempotency-Key: episode-12-host" \
-F "voice_id=VOICE_ID" \
-F "[email protected]" \
-F "title=Episode 12 host"
| Parameter | Required | Description |
|---|---|---|
audio | Yes | Input recording: WAV, MP3, OGG, WEBM or M4A |
voice_id | Yes | Target voice ID (your voice or a public voice) |
speed | No | Speaking rate 0.5–2.0, default 1.0 |
mode | No | balance (default), stable, creative |
title | No | Task name, up to 255 characters |
Limits
- File size and duration depend on your plan (Standard and above: 20MB, 5 minutes). See
limits.max_conversion_size_mbandlimits.max_conversion_duration_secondsfromGET /account. - Billed by the exact input duration, with credits rounded up.
- Input audio goes through content moderation. If it's rejected you get
CONTENT_REJECTEDand nothing is charged.
Returns 202 with a task object whose type is voice_conversion, text is null, and input_duration_seconds is the input length.
Getting better results
- Use recordings with a single speaker and no background music or obvious noise.
- Results sound most natural when the target voice has a similar gender and range to the original.
- Split long recordings into sentences and convert them separately.