정확 동기화와 프라이버시를 보장하는 오픈소스 TTS 전자책 제작기

정확 동기화와 프라이버시를 보장하는 오픈소스 TTS 전자책 제작기
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

Calliope는 오픈소스 신경망 TTS(XTTS‑v2, Chatterbox)를 활용해 EPUB 3 Media Overlay 형식의 내레이션 전자책을 자동 생성한다. 텍스트를 문장 단위로 분할하고 TTS 과정에서 직접 타임스탬프를 획득해 오디오와 텍스트 하이라이트를 완벽히 일치시킨다. 레이아웃·CSS·임베디드 미디어를 그대로 보존하며, 전체 파이프라인이 오프라인에서 동작해 비용·프라이버시·저작권 위험을 최소화한다. 강제 정렬 기반 방법과 비교해 동기화 드리프트가 현저히 적으며, 재귀적 텍스트 분할 기법으로 모델의 컨텍스트 제한도 해결한다.

상세 분석

Calliope는 EPUB 3 표준을 깊이 이해하고, OCF 컨테이너 내부의 OPF, XHTML, CSS 구조를 그대로 유지하면서 미디어 오버레이를 삽입한다. 핵심 기술은 세 단계로 구분된다. 첫 번째 단계에서는 DOM을 순회해 블록 레벨 요소를 식별하고, Unicode 정규화·구두점 표준화를 수행한 뒤, 문장 토크나이저로 문장을 추출한다. 각 문장은 고유 ID를 가진 <span>으로 감싸져 원본 CSS 속성을 그대로 상속받으며, 하이라이트 대상이 된다.

두 번째 단계에서는 선택된 신경망 TTS 모델이 문장별 오디오를 생성한다. XTTS‑v2는 GPT‑2 기반 자동회귀 트랜스포머이며, Chatterbox는 Flow‑Matching 기반 비자동회귀 모델이다. 두 모델 모두 입력 길이 제한(λ⁺)과 출력 토큰 초과(λ⁻) 문제에 대비해, 문장이 너무 길면 공백 기준으로 재귀 분할하고, 너무 짧으면 인접 문장을 병합한다. 또한, 토큰 오버플로우가 발생하면 예외를 포착해 문장을 다시 분할하고 합성 결과를 이어 붙인다.

오디오 합성 후에는 각 wav 파일에 50 ms 페이드‑아웃을 적용하고, 0.15 s 정도의 무음 패딩을 삽입해 청취 중 끊김을 방지한다. 타임스탬프는 각 문장의 시작 시간을 누적 합산해 결정하고, 다음 문장의 시작 시점까지 현재 문장의 하이라이트를 연장함으로써 “갭리스” 시각 효과를 만든다. 이는 EPUB 3 검증에서 요구하는 연속적인 시간 구간을 만족시키며, 독자에게 시각적 플리커 현상을 최소화한다.

세 번째 단계에서는 생성된 SMIL 파일을 각 XHTML 챕터와 연결하고, OPF 매니페스트에 media-overlaymedia:duration 메타데이터를 삽입한다. 또한 prefers-color-scheme 미디어 쿼리를 이용해 라이트·다크 모드 모두에서 가시성이 높은 하이라이트 색상을 제공한다. 최종적으로 모든 파일을 ZIP 형태의 OCF 컨테이너로 재패키징해 EPUB 3.3 접근성 사양을 충족하는 완전한 내레이션 전자책을 만든다.

Calliope는 강제 정렬 기반 솔루션(예: Syncabook, Storyteller)과 달리 TTS 단계에서 직접 타임스탬프를 획득함으로써 동기화 정확도를 0 ms 수준으로 유지한다. 실험 결과, 강제 정렬은 평균 200 ms 이상의 드리프트를 보이며, 특히 숫자·약어·긴 문장에 취약함을 확인했다. 또한, 기존 오픈소스 파이프라인은 CSS와 레이아웃을 재구성하면서 시각적 충실도를 손상시키는 반면, Calliope는 “수술적” 수정만으로 원본 디자인을 보존한다.

마지막으로, 오프라인 실행은 클라우드 API 호출 비용을 없애고, 민감한 원고를 외부 서버에 전송하지 않아 프라이버시와 저작권 위험을 크게 낮춘다. 현재는 Linux·macOS·Windows 환경에서 Python 기반 MIT 라이선스로 제공되며, GPU 가속 옵션을 통해 실시간에 가까운 합성도 가능하다.


댓글 및 학술 토론

Loading comments...

의견 남기기