/audio/queue, tampouco text-to-speech ou clonagem de voz.
Escolha um modelo de trocador de voz, solicite uma cotação de preço, coloque a conversão na fila e faça polling até que a Venice retorne o áudio convertido.
Uma conversão enfileirada é cobrada imediatamente. Se a resposta da fila for perdida, faça polling em
/audio/voice-changer/retrieve com o mesmo queue_id. Não enfileire a mesma gravação novamente.Escolha um modelo
Modelos de trocador de voz são retornados porGET /models?type=music com model_spec.voice_changer definido como true. Não há um filtro ?type=voice-changer. Os exemplos abaixo usam elevenlabs-voice-changer.
Campos não suportados causam uma resposta HTTP
400. Gravações mais longas que max_source_audio_duration_seconds são rejeitadas com HTTP 422 antes de qualquer cobrança.
Fluxo de conversão
1. Obtenha uma cotação de preço
O Trocador de Voz é cobrado com base na duração da gravação de origem, arredondada para cima para o próximo minuto inteiro. Cote o comprimento que você espera enviar; a cobrança é calculada a partir do comprimento que a Venice mede quando a gravação é enfileirada.2. Enfileire a conversão
Forneça a gravação de origem exatamente de uma de duas formas: como uploadfile multipart, ou como um audio_url em um corpo JSON. Fornecer ambos, ou nenhum, é rejeitado.
Quando você passa uma URL, a Venice busca e valida os bytes por conta própria e encaminha apenas esses bytes para o provedor. A URL nunca é repassada adiante.
remove_background_noise— remove o ruído de fundo antes da conversãoseed— inteiro ≥ 0 para um resultado reproduzível
model e queue_id; os endpoints retrieve e complete os exigem. Compare duration_seconds com sua cotação se precisar reconciliar a estimativa com o comprimento cobrado.
3. Faça polling e baixe
Chame/audio/voice-changer/retrieve com os valores da resposta de queue:
Content-Type da resposta:
Uma resposta de processamento se parece com esta:
x-venice-audio-format, x-venice-audio-duration, x-venice-inference-time, x-venice-model-id e x-venice-model-name.
Se o provedor falhar na conversão, a cobrança é reembolsada automaticamente e o corpo do erro inclui credits_refunded. Fazer polling novamente reproduz o mesmo resultado em vez de reembolsar duas vezes.
Para excluir a mídia armazenada na mesma chamada que retorna o áudio, defina delete_media_on_completion como true em retrieve. O áudio não pode ser recuperado novamente depois disso.
Exemplo completo
Este exemplo em Python cota uma conversão, envia um arquivo de origem, faz polling a cada cinco segundos e salva o resultado como MP3.O endpoint de cotação não requer autenticação, mas as requisições de queue, retrieve e complete requerem.