COEIROINK
💡 네트워크 연결 오류 (NetworkConnectionError)
원인
- COEIROINK 로컬 서버(보통
127.0.0.1:50032)가 실행 중이 아니거나,
방화벽 또는 백신 프로그램에 의해 포트 접근이 차단됨.
- PC가 오프라인 상태이거나, 로컬 루프백 통신이 비활성화됨.
해결 방법
- COEIROINK 엔진이 실행 중인지 확인
- COEIROINK GUI 또는 CLI 서버가 열려 있어야 합니다.
127.0.0.1:50032 포트가 열려 있는지 확인하세요.
- 방화벽/보안 프로그램 예외 등록
coeiroink.exe 또는 voicevox_engine.exe가 차단되지 않도록 예외 처리합니다.
- 엔진 재시작
- COEIROINK를 종료 후 다시 실행하면 포트가 새로 초기화됩니다.
- 인터넷 연결 확인 (필요 시)
- 일부 외부 리소스를 불러오는 경우 네트워크 연결이 필요할 수 있습니다.
💡 COEIROINK 서버 연결 실패 (CoeiroinkServerConnectionError)
원인
- 로컬 COEIROINK 서버가 꺼져 있거나, API 포트(
50032)가 변경됨.
- 동시에 여러 애플리케이션이 같은 포트를 사용 중.
해결 방법
- COEIROINK를 실행 후 “API 서버 활성화” 옵션을 켭니다.
GUI가 아니라 CLI 모드에서 실행 중인지도 확인하세요.
- Windows 명령 프롬프트에서 다음을 입력:
netstat -ano | find "50032"
→ 포트가 “LISTENING” 상태가 아니면 COEIROINK가 실행되지 않은 것입니다.
- 포트 충돌 시 다른 포트를 지정해 실행 후
설정 파일에서 해당 포트로 변경합니다.
💡 서버 응답 해석 오류 (CoeiroinkJsonParseError)
원인
- COEIROINK 서버가 비정상적인 JSON 데이터를 반환함.
- 엔진 버전이 다르거나, 응답 포맷이 변경됨.
- 요청 중간에 강제 종료되어 JSON이 완전하지 않음.
해결 방법
- COEIROINK 버전 확인
- VoiceScriptPlayer가 사용하는 API 버전과 호환되는 버전인지 확인합니다.
- 구버전이라면 최신 COEIROINK 엔진으로 업데이트하세요.
- 문장 단순화
- 너무 긴 문장이나 특수문자가 포함된 문장은 JSON 변환 중 문제가 생길 수 있습니다.
- 로그 파일 확인
- COEIROINK 콘솔 또는 로그에서 "predict_with_duration" 에러 메시지를 확인하세요.
💡 Prosody 데이터를 가져오지 못했습니다 (CoeiroinkProsodyEmpty)
원인
- 입력 문장이 너무 짧거나, 지원되지 않는 문자 조합을 포함함.
PredictProsodyDetail() 호출이 실패했지만 예외로 감지되지 않음.
해결 방법
- 입력 문장을 짧게 나누어 테스트
- 100자 이하의 문장으로 나누어 재시도합니다.
- 비정상 문자 제거
- 특수기호, 제어문자, 이모지를 제거하고 다시 시도합니다.
- 엔진 로그 확인
- "predict_with_duration" 요청 시 응답이 비어 있는 경우, 엔진이 일부 문자를 처리하지 못했을 수 있습니다.
💡 Prosody 예측 실패 (CoerioinkPredictError)
원인
- prosody 예측 요청(
/v1/predict_with_duration)이 실패함.
- API 응답 코드가 400, 404, 500 등으로 반환됨.
해결 방법
- COEIROINK 서버 로그 확인
- "predict_with_duration" 단계에서 어떤 오류가 발생했는지 확인합니다.
- 입력 텍스트 단순화
- 긴 문장, 이모지, 일본어 외 문자 제거 후 테스트합니다.
- 속도 조정 확인
speedScale 값이 0 이하이거나 너무 크면 처리 실패할 수 있습니다.
💡 오디오 처리 실패 (CoerioinkProcessError)
원인
/v1/process 요청에서 음성 생성 중 오류 발생.
- prosody 예측 단계에서 생성된
wavBase64 데이터가 손상됨.
해결 방법
- 다시 생성 시도
- 동일 문장을 다시 시도하면 일시적 캐시 문제일 수 있습니다.
- 엔진 로그 확인
- "process" 단계에서 에러 코드가 출력되었는지 확인합니다.
- pitchScale, intonationScale 값 확인
- 너무 높은 값(예: 5.0 이상)은 내부 계산 오류를 유발할 수 있습니다.
💡 생성된 오디오 데이터가 비어 있음 (CoerioinkEmptyAudio)
원인
- 엔진이 음성을 출력하지 못하고 빈 응답을 반환함.
- 일부 문장에 발음 가능한 모라가 없음 (예: 기호만 포함된 문장).
해결 방법
- 문장을 다시 확인
- “...”, “♪”, “♡” 등 발음 불가능한 문자는 제거합니다.
- 엔진 재시작
- COEIROINK를 재실행하면 임시 캐시가 초기화됩니다.
- 다른 화자/스타일로 시도
- 특정 음성 스타일이 오류를 일으킬 수 있습니다.
원인
- 엔진이 WAV 대신 오류 메시지를 텍스트로 반환함.
- WAV 헤더가 손상되거나, 데이터가 중간에 잘림.
해결 방법
- 출력 파일을 확인
- 실제 반환된 파일이 WAV 헤더("RIFF")로 시작하는지 확인합니다.
- COEIROINK 업데이트
- 구버전 엔진은 일부 설정값을 처리하지 못할 수 있습니다.
- 짧은 문장으로 테스트
- 과도하게 긴 텍스트 입력은 엔진 내부 버퍼 초과를 일으킬 수 있습니다.
💡 알 수 없는 COEIROINK 오류 (CoerioinkUnknownError)
원인
- 처리 중 예기치 못한 예외 발생 (파일 접근, 메모리 부족 등).
- VoiceScriptPlayer와 COEIROINK 간 프로토콜 불일치.
해결 방법
- VoiceScriptPlayer와 COEIROINK 버전 확인
- 프로젝트 재시작
- 임시 캐시 및 세션 데이터가 꼬였을 수 있습니다.
- 개발자에게 문의
- 로그 파일(
vsp_log.txt 등)을 첨부해 이슈 트래커 또는 Patreon에 보고해주세요.