Phase 15.5 구현: 화자 구분 (Speaker Diarization)

- Sidecar: pyannote /diarize 엔드포인트 + requirements.txt 업데이트
- LLM 기반 화자 추정 (Phase 1 — 오디오 보존 없이 전사 텍스트 분석)
- CaptionSegment에 speaker 필드 추가
- EditableSegment: 화자별 색상 바 + 화자 Chip 표시
- TranscriptTab: 화자 구분 버튼 + 진행률
- 설정: HuggingFace 토큰 입력 + Diarization 토글
- IPC: DIARIZE + DIARIZATION_PROGRESS 채널
- 에러코드: 895-897
- 12개 locale i18n
This commit is contained in:
Yun Chan 2026-04-08 12:14:00 +09:00
parent da25791c75
commit fc7628327a
25 changed files with 679 additions and 18 deletions

View file

@ -270,5 +270,13 @@
"meeting.exportPdfFmt": "PDF (.pdf)",
"meeting.polishFailed": "KI-Polierung fehlgeschlagen",
"meeting.viewDetailError": "Meeting-Details konnten nicht geladen werden",
"meeting.startRecordingError": "Aufnahme konnte nicht gestartet werden"
"meeting.startRecordingError": "Aufnahme konnte nicht gestartet werden",
"meeting.diarize": "Sprecher trennen",
"meeting.diarizing": "Sprecher werden identifiziert...",
"meeting.diarizeComplete": "Sprechertrennung abgeschlossen",
"meeting.speaker": "Sprecher",
"settings.hfToken": "HuggingFace Token",
"settings.hfTokenHint": "Ein HuggingFace Token wird für die Sprechertrennung benötigt",
"settings.diarization": "Sprechertrennung",
"settings.diarizationHint": "Sprecher werden nach der Aufnahme automatisch identifiziert"
}