Commit Graph

6 Commits

Author SHA1 Message Date
claude
c0665893a7 feat: 글자속도·단어간격·문장간격 독립 조절 + atempo 기본 타임스트레치
- 타임스트레치 우선순위를 ffmpeg atempo(기본) → rubberband → librosa 로 변경
- MeloEngine: 문장 단위로 분리 후 문장 사이 무음(sentence_gap), 단어(어절) 사이
  무음(word_gap)을 타임스트레치와 독립적으로 삽입. speed 는 글자(음소) 속도만 조절
- API(TTSRequest)에 word_gap/sentence_gap 필드 추가, 전 엔진 시그니처 확장
- 프론트엔드에 '글자 속도/단어 간격/문장 간격' 슬라이더 추가, supports 플래그로
  미지원 엔진(supertonic/oute/cosy)에서는 간격 슬라이더 자동 비활성화
2026-08-25 23:54:48 +09:00
claude
e6bc6ef2be feat: 한국어 발음 개선 전처리(기호/영어약어/사용자사전)
- g2pkk 한계로 뭉개지는 약어·기호를 g2p 이전에 한글로 교정
- 예: GPU→지피유, API→에이피아이, 50%→50퍼센트, 25℃→25도
- USER_DICT로 특정 단어 발음 교정 확장 가능
- AUTO/KR 모드에서 적용(영어 전용 모드는 미적용)
- 참고: 속도 뭉개짐과는 별개(g2p/정규화 문제)
2026-08-24 15:00:57 +09:00
claude
1942a7aecd fix: 속도 조절을 length_scale에서 사후 타임스트레치로 분리(발음 뭉개짐 개선)
- 자연 속도(1.0)로 합성 후 Rubberband(R3)로 배속 → 발음/피치 보존
- 폴백: ffmpeg atempo → librosa. rubberband-cli/pyrubberband 추가
- 원인: MeloTTS speed는 length_scale 축소라 고배속에서 자음이 뭉개짐
2026-08-24 14:42:21 +09:00
claude
9fe1a5479d feat: 자동 언어 감지 4개 언어로 확장 (한/영/일/중)
- split_by_language: 가나/한자 CJK 처리(가나 있으면 JP, 없으면 ZH)
- JP/ZH 언어·화자 추가, AUTO 구간별 화자 매핑
- warmup에 JP/ZH 모델 사전 다운로드 추가
2026-08-24 12:45:31 +09:00
claude
58b2d7a41c feat: MeloTTS 자동 언어 감지(한/영 혼합 분리 합성) + CosyVoice 비활성화
- 기본 MeloTTS 단일 엔진만 노출(사용자 요청)
- AUTO 모드: 입력을 언어별로 분리해 각 언어 음성으로 합성 후 이어붙임
- 판별 불가 구간 기본 언어 = 영어(기본값 영어)
- 기본 선택 언어 AUTO(default_language), 프론트 반영
- Dockerfile: CosyVoice 빌드 제거로 이미지 경량화
2026-08-24 03:06:36 +09:00
claude
91f8ec3533 refactor: 다중 엔진 레지스트리 구조로 전환 + 프론트 엔진 선택 UI
- app/engines: BaseEngine 인터페이스, MeloEngine(인프로세스), 레지스트리
- /api/engines 추가, /api/tts 에 engine 파라미터
- 프론트: 엔진 → 언어 → 목소리 선택, 라이선스/GPU/조절 지원 표기
- MeloTTS 동작 불변
2026-08-23 22:21:26 +09:00