Commit Graph

21 Commits

Author SHA1 Message Date
claude
c0fbc4d881 feat: 단어·문장 간격을 음수까지 허용(0 미만은 경계 무음 트리밍)
- word_gap 범위 -0.2~0.5, sentence_gap 범위 -0.5~1.5 로 확장(음수=더 붙임)
- 음수 간격은 이전 조각 끝 + 다음 조각 시작의 무음을 |gap| 초까지 잘라 붙이는
  _trim_end/start_silence + _append_unit 로 처리
- API Field 범위/설명, 프론트 슬라이더 min/스케일 라벨 갱신
2026-08-26 20:37:31 +09:00
claude
fae52f67c5 fix: 글자 속도를 생성 단계 length_scale(음절 발화 속도)로 변경
- 사후 배속(atempo) 대신 model.tts_to_file(speed=) 로 각 음절(안/녕/하)의
  발음 속도 자체를 조절. 피치 보존, TSM 아티팩트 없음
- _synth_segment/_synth_natural 에 speed 인자 전달, synth_wav 의 사후
  타임스트레치 제거. 단어·문장 간격은 여전히 발화 속도와 독립
2026-08-26 00:20:57 +09:00
claude
dde57aafda tune: 속도/간격 슬라이더 기본값을 범위 가운데로, 양 끝을 최소·최대치로 정렬
- 글자 속도 기본 1.4→1.25(범위 0.5~2.0의 중앙)
- 단어 간격 기본 0→0.25s(범위 0~0.5s의 중앙)
- 문장 간격 기본 0.3→0.75s(범위 0~1.5s의 중앙)
- 슬라이더 스케일 라벨에 최소/최대 수치 표기
2026-08-26 00:16:41 +09:00
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
e16f88e534 Set default TTS speed to 1.4x 2026-08-25 23:40:47 +09:00
claude
febb3f3ee4 fix: 전 엔진 속도 조절을 피치보존 타임스트레치(Rubberband R3)로 통일
- Supertonic/OuteTTS도 자연 속도 합성 후 Rubberband로 배속 → 고배속에서 목소리 안 뭉개짐
- Typecast 등 AI보이스가 쓰는 방식(pitch-preserving TSM)과 동일
- pyrubberband 워커 의존성 추가(rubberband-cli는 이미 이미지에 포함)
2026-08-25 19:46:20 +09:00
claude
df18f64d1f fix: 런타임 이미지에 build-essential 추가(pesq 등 소스 빌드 의존성) 2026-08-25 10:15:48 +09:00
claude
1aa0bbf3e6 feat: OuteTTS 엔진 추가(개인용/비상업 CC-BY-NC, 한국어)
- Qwen2 500M + WavTokenizer, torch cu128 GPU, 전용 venv 워커(8003)
- 한국어 프리셋 4종(male/female), 속도·피치 librosa 후처리
- transformers 4.49로 torchvision 강제 import 회피, soundfile 저장
- scenema-audio는 VRAM 24GB+/Gemma12B 게이트로 8GB GPU에선 불가 → 미포함
2026-08-25 10:02:24 +09:00
claude
ed09c6a08f feat: Supertonic 엔진 추가(자연스러운 한국어, MIT, ONNX)
- 전용 venv 워커(8002)로 격리, MeloTTS(8788)와 병행
- 남녀 10종 음성, 한국어/자동감지(다국어), 속도·피치
- 모델 ~260MB 베이킹, torch/GPU 불필요
- entrypoint로 워커+메인앱 동시 기동
2026-08-24 21:00:45 +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
7728d28d57 perf: 멀티스테이지 빌드로 이미지 슬림화
- 런타임 이미지에서 컴파일러 툴체인(build-essential/git) 제외
- triton 제거(추론엔 불필요, torch.compile 전용)
- 미사용 gruut 언어팩(es/de/fr) 제거
- 슬림화 후 한/영 모델 로드 검증 단계 추가
2026-08-24 03:22:19 +09:00
claude
74d39e67c6 chore: Dockerfile 레이어 순서 최적화(워밍업을 앱 COPY 앞으로) 2026-08-24 03:07:10 +09:00
claude
58b2d7a41c feat: MeloTTS 자동 언어 감지(한/영 혼합 분리 합성) + CosyVoice 비활성화
- 기본 MeloTTS 단일 엔진만 노출(사용자 요청)
- AUTO 모드: 입력을 언어별로 분리해 각 언어 음성으로 합성 후 이어붙임
- 판별 불가 구간 기본 언어 = 영어(기본값 영어)
- 기본 선택 언어 AUTO(default_language), 프론트 반영
- Dockerfile: CosyVoice 빌드 제거로 이미지 경량화
2026-08-24 03:06:36 +09:00
claude
9c1009d16d feat: CosyVoice 한국어 엔진 통합 (Apache-2.0, GPU)
- vendor/CosyVoice: 패치된 CosyVoice 코드 + Matcha-TTS 벤더링
- cosyvoice_worker: 전용 venv에서 상주하는 합성 워커(FastAPI, 모델 1회 로드)
- app/engines/cosyvoice_engine: HTTP 프록시 엔진(속도/피치)
- Dockerfile: 전용 venv(torch cu128) + 모델 베이킹 + 빌드 워밍업
- entrypoint.sh: 워커(8001) + 메인앱(8788) 동시 기동
2026-08-23 23:16:24 +09:00
claude
b92d2be2af docs: Coqui 체크포인트 삭제(404) 확정, CosyVoice 한국어 GPU 실측 성공 기록 2026-08-23 23:11:59 +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
claude
389916e9f3 docs: 6개 한국어 TTS 리포 심층분석 + 다중엔진 통합 계획 2026-08-23 22:18:33 +09:00
claude
f197177ae1 한국어 우선 MeloTTS 웹 서비스 추가 (GPU, 속도/피치, 로그인 없음)
- FastAPI 백엔드: /api/voices, /api/tts, /api/health
- 한국어 메인 + 영어(5종 악센트), 중국어/일본어 UI 제거
- 언어별 목소리 모델 선택, 속도(0.5~2.0x)/피치(±12반음) 조절
- 로그인/사용제한/과금 유도 없음 (무제한 테스트)
- NVIDIA GPU 자동 사용 (torch cu128, Blackwell sm_120)
- 유저 친화 한국어 UI (frontend)
- Docker/compose (GPU 예약), 8788 포트
- MeloTTS(순수 파이썬) 벤더링 + 검증된 버전 고정(constraints)
2026-08-23 21:57:48 +09:00
a6f3bac584 Initial commit 2026-08-23 19:26:14 +09:00