DIVE API
최고급 음성 합성 기술로 사람과 구별할 수 없는 자연스러운 음성을 생성하세요
DIVE(Deep Immersive Voice Engine)는 최첨단 딥러닝 기술을 활용한 프리미엄 음성 합성 서비스입니다. 방송, 오디오북, 광고 나레이션 등 최고 품질의 음성이 필요한 프로젝트에 최적화되어 있습니다.
스튜디오급 48kHz 고품질 오디오
사람과 구별 불가능한 자연스러운 발음
섬세한 감정과 뉘앙스 표현
POST https://agitvxptajouhvoatxio.supabase.co/functions/v1/dive-synthesize-v1
요청 파라미터
공통 파라미터
| 파라미터 | 타입 | 설명 | 필수 |
|---|---|---|---|
| text | string | 변환할 텍스트 (최대 720자) | ✓ |
| mode | string | "preset", "saved", 또는 "reference" (기본값: "preset") | |
| lang | string | 언어 코드 (기본값: "ko") |
💡 참고: mode에 따라 추가 파라미터가 달라집니다.
mode: presetPreset 모드
기본 제공되는 음성을 사용합니다.
| 파라미터 | 타입 | 설명 | 필수 |
|---|---|---|---|
| voiceName | string | 음성 이름 (예: "시아", "민준") | ✓ |
| emotion | string | neutral | angry | sad | happy | calm | ✓ |
mode: savedSaved 모드
사용자가 저장한 목소리를 사용합니다.
| 파라미터 | 타입 | 설명 | 필수 |
|---|---|---|---|
| savedVoiceId | string | 저장된 목소리 ID (UUID) | ✓ |
참고: savedVoiceId는 콘솔 Playground에서 목소리를 저장할 때 생성됩니다. 간단한 UUID만으로 저장된 목소리를 사용할 수 있습니다.
mode: referenceReference 모드
사용자의 커스텀 레퍼런스 오디오를 사용합니다. (승인된 사용자만 사용 가능)
| 파라미터 | 타입 | 설명 | 필수 |
|---|---|---|---|
| referenceAudio | string | Base64 인코딩된 오디오 데이터 | ✓ |
| referenceText | string | 레퍼런스 오디오의 원본 텍스트 | ✓ |
응답 형식
{
"success": true,
"job_id": "550e8400-e29b-41d4-a716-446655440000",
"audio_url": "https://download-example.output/generated.wav"
}지원 음성
DIVE는 다양한 연령, 톤, 스타일의 고품질 한국어 음성을 제공합니다. 각 음성은 서로 다른 감정 표현을 지원합니다.
감정 지원 표시:
여성 음성
남성 음성
⚠️ 일부 음성은 제한된 감정만 지원합니다:
- • 도금봉: calm 미지원
- • 자비왕후: calm, sad 미지원
- • 강남: sad 미지원
- • 아라곤: sad 미지원
💡 사용법: voiceName과 emotion 파라미터를 함께 사용하세요.
예: "voiceName": "시아", "emotion": "neutral"
감정 표현 상세
neutral
중립적
happy
밝고 즐거운
sad
차분하고 슬픈
angry
강렬하고 단호한
calm
차분하고 침착한
다양한 언어로 DIVE API를 호출하는 예시입니다. 모드와 언어를 선택하세요.
const response = await fetch('https://agitvxptajouhvoatxio.supabase.co/functions/v1/dive-synthesize-v1', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': '{YOUR_API_KEY}'
},
body: JSON.stringify({
text: "안녕하세요. 프리미엄 음성 합성 DIVE입니다.",
mode: "preset",
voiceName: "시아",
emotion: "neutral",
lang: "ko"
})
});
const data = await response.json();
console.log('Audio URL:', data.audio_url);