POST https://api.acedata.cloud/fish/tts입니다.
신청 절차
Fish TTS API를 사용하려면 먼저 Ace Data Cloud 콘솔에서 API Token을 받아야 합니다. 이를 보관해 두세요.
로그인이나 등록이 되어 있지 않으면 자동으로 로그인 페이지로 리디렉션되어 등록 및 로그인을 초대합니다. 완료 후 현재 페이지로 자동으로 돌아옵니다.
하나의 API Token으로 플랫폼의 모든 서비스를 호출할 수 있으며, 각 서비스마다 별도로 신청할 필요가 없습니다. 처음 신청 시 무료 할당량이 제공되어 무료로 체험할 수 있습니다; 할당량이 부족할 경우 콘솔에서 일반 잔액을 충전할 수 있습니다.
📘 전체 문서: Fish TTS API →
요청 헤더
요청 본문 필드
일회성 클론은 HTTPS 오디오 URL만 수용하며, MessagePack, Base64, data URI 또는 자격 증명이 있는 URL은 수용하지 않습니다. 참조 오디오는 10–270초를 권장하며, Studio에서는 더 보수적인 10–60초 범위를 사용합니다.
예시 1: 최소 요청(text + format=mp3)
audio_url은 본 플랫폼 CDN을 가리키며, 직접 GET으로 다운로드하거나 <audio>에서 재생할 수 있습니다. 최종 성공 응답은 최상위 cost를 반환하며, 여기서 amount는 이번에 실제로 차감된 크레딧입니다; 계정 할인 시 list_amount는 할인 전 할당량을 나타냅니다. 링크는 장기적으로 사용 가능하지만, 여전히 자신의 저장소에 한 부를 남기는 것이 좋습니다.
예시 2: 클론 음색 reference_id 사용
아래는 Fish 플랫폼에서 공개된 스페인어 음색(_id는 Fish Model Query에서 검색할 수 있습니다):
예시 3: 일회성 즉시 음성 클론(references)
참조 오디오를 공개 HTTPS 주소에 두고, 그 안에서 실제로 말한 정확한 원문을 제공합니다. 이 음성은 이번 합성에만 사용되며, 장기 모델은 생성되지 않습니다:
예시 3: 말 속도 / 볼륨 조절 (prosody)
speed가 1보다 크면 빨라지고, 1보다 작으면 느려집니다; volume 단위는 dB로, 0은 변하지 않음을 의미하며, 양수는 증폭, 음수는 감쇠를 나타냅니다.
예시 5: 모델 전환 + 비트 전송률 제어
HTTP 헤더model: s1을 통해 안정형 모델로 전환하고, 요청 본문에 mp3_bitrate: 128을 추가하여 MP3 비트 전송률을 제어합니다:
예시 6: PCM 원시 파형
브라우저에서 실시간으로 연결하거나 클라이언트에서 후속 처리(믹싱, 속도 변경)를 해야 하는 경우pcm을 사용하는 것이 좋습니다:
링크의 확장자는 요청의format에 따라 결정됩니다:mp3는.mp3를,wav와pcm은.wav를 얻습니다 (WAV 컨테이너, 16 bit PCM).
비동기 콜백 (callback_url)
긴 텍스트를 한 번에 합성하는 데는 수초에서 수십 초가 걸릴 수 있으며, 연결이 끊어지면 재시도해야 합니다. 요청 본문에 callback_url을 전달하면, 인터페이스는 즉시 {task_id, started_at}를 반환하고, 상위에서 실제로 완료되면 전체 결과를 POST JSON 형식으로 해당 URL로 콜백합니다. 요청 본문에는 동일한 task_id와 이번 최종 청구의 최상위 cost가 포함됩니다. 초기 작업 확인은 아직 합성이 완료되지 않았으므로 cost가 포함되지 않습니다.
callback_url은 다음과 같은 형식으로 수신합니다:
task_id에 따라 결과를 수동으로 가져올 수 있습니다; 최종 상태 기록의 response.cost는 콜백의 cost와 일치하며, 자세한 내용은 해당 문서를 참조하십시오.
오류 처리
400 token_mismatched: 요청 매개변수가 누락되었거나 유효하지 않음 (가장 흔한 경우는text가 비어 있거나format이mp3/wav/pcm외의 값을 전달한 경우).401 invalid_token: 인증 토큰이 존재하지 않거나 유효하지 않음.429 too_many_requests: 계정 속도 제한이 발생함.500 api_error: 서버 내부 오류.
message 필드에 유효하지 않은 필드를 설명합니다, 예를 들어:
결론
Fish TTS를 통합하는 최소 비용은: 이미api.fish.audio/v1/tts를 호출하는 코드에서 인증을 이 플랫폼의 토큰으로 변경하고 요청 본문에 명시적으로 format: "mp3"를 포함하는 것입니다. 긴 텍스트 장면에서는 callback_url 비동기 콜백을 사용하는 것이 좋습니다; 클론 음색 reference_id의 발견은 Fish Model Query 및 Fish Model Get와 함께 사용하십시오.
