/audio/queue나 text-to-speech, 보이스 클로닝이 아닙니다.
보이스 체인저 모델을 선택하고, 가격 견적을 요청하고, 변환을 큐에 넣은 다음, Venice가 변환된 오디오를 반환할 때까지 폴링하세요.
큐에 등록된 변환은 즉시 요금이 청구됩니다. 큐 응답이 유실되면 동일한
queue_id로 /audio/voice-changer/retrieve를 폴링하세요. 동일한 녹음을 다시 큐에 넣지 마세요.모델 선택
보이스 체인저 모델은GET /models?type=music으로 반환되며, model_spec.voice_changer가 true로 설정되어 있습니다. ?type=voice-changer 필터는 없습니다. 아래 예제에서는 elevenlabs-voice-changer를 사용합니다.
지원되지 않는 필드는 HTTP
400 응답을 유발합니다. max_source_audio_duration_seconds보다 긴 녹음은 요금이 청구되기 전에 HTTP 422로 거부됩니다.
변환 흐름
1. 가격 견적 받기
보이스 체인저는 원본 녹음의 길이를 다음 정수 분으로 올림해 청구됩니다. 보내려는 길이로 견적을 요청하세요. 실제 요금은 녹음이 큐에 등록될 때 Venice가 측정하는 길이로 계산됩니다.2. 변환 큐에 넣기
원본 녹음은 두 가지 방식 중 정확히 하나로 제공하세요. multipartfile 업로드로 보내거나, JSON 본문의 audio_url로 보내세요. 둘 다 제공하거나 아무것도 제공하지 않으면 거부됩니다.
URL을 전달하면 Venice가 바이트를 직접 가져와 검증한 다음 그 바이트만 공급자에게 전달합니다. URL 자체는 절대 전달되지 않습니다.
remove_background_noise— 변환 전에 배경 잡음을 제거합니다seed— 재현 가능한 결과를 위한 0 이상의 정수
model과 queue_id를 저장하세요. retrieve와 complete 엔드포인트에서 필요합니다. 견적을 청구된 길이와 대조해야 한다면 duration_seconds를 견적과 비교하세요.
3. 폴링 및 다운로드
큐 응답에서 받은 값으로/audio/voice-changer/retrieve를 호출하세요:
Content-Type을 확인하세요:
처리 중 응답은 다음과 같은 형태입니다:
x-venice-audio-format, x-venice-audio-duration, x-venice-inference-time, x-venice-model-id, x-venice-model-name도 포함됩니다.
공급자가 변환에 실패하면 요금이 자동으로 환불되며, 오류 본문에 credits_refunded가 포함됩니다. 다시 폴링하면 두 번 환불하는 대신 동일한 결과가 반복 재생됩니다.
오디오를 반환하는 동일 호출에서 저장된 미디어를 삭제하려면 retrieve에 delete_media_on_completion을 true로 설정하세요. 이후에는 오디오를 다시 가져올 수 없습니다.
전체 예시
이 Python 예제는 변환 견적을 받고, 원본 파일을 업로드하고, 5초마다 폴링한 다음, 결과를 MP3로 저장합니다.quote 엔드포인트는 인증이 필요하지 않지만, queue, retrieve, complete 요청에는 인증이 필요합니다.