DIVE (Streaming) API
DIVE 오디오를 청크 단위로 스트리밍합니다.
개요
DIVE API의 스트리밍 버전입니다. 낮은 지연시간 (500ms) 으로 오디오를 재생할 수 있습니다.
지원 형식
mp3wavaac
API 엔드포인트
POST https://prosody-api.humelo.works/api/v1/dive/stream
DIVE Streaming은 전용 스트리밍 서버 엔드포인트를 통해 제공됩니다.
요청 파라미터
공통 파라미터
| 파라미터 | 타입 | 설명 | 필수 |
|---|---|---|---|
| text | string | 변환할 텍스트 (1-720자) | ✓ |
| mode | string | "preset", "saved", 또는 "reference" (기본값: "preset") | |
| lang | string | 언어 코드 (기본값: "ko") | |
| output_format | string | mp3 | wav | aac (기본값: "mp3") |
💡 참고: 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 | 레퍼런스 오디오의 원본 텍스트 | ✓ |
응답 형식
응답은 audio/mpeg 타입의 스트리밍 데이터로 전송됩니다.
Content-Type: audio/mpeg
Transfer-Encoding: chunked
[오디오 데이터 청크 1]
[오디오 데이터 청크 2]
[오디오 데이터 청크 3]
...DIVE vs DIVE Streaming
두 API는 동일한 음질과 기능을 제공하지만, 응답 방식이 다릅니다:
- DIVE:전체 오디오를 한 번에 반환
- DIVE Streaming:오디오를 청크 단위로 실시간 스트리밍