스프레드시트로 대량 텍스트 음성 변환
녹음이 하나가 아니라 수백 개 필요한 프로젝트가 있습니다. 플래시카드마다, 앱 버튼마다, 상품마다, 지점마다, 언어마다 한 줄씩. 온라인 도구로 한 줄씩 만들면 며칠이 걸리고, 클라우드 서비스는 글자마다 요금을 받습니다.
SuperClonica 엔진은 내 컴퓨터에서 표 전체를 읽어, 행마다 파일 하나씩, 각 행에 정한 목소리와 언어로 만들어 줍니다. 이 가이드에서는 표를 준비하는 법, 한 번에 생성하는 법, 나중에 일부 행만 고치는 법을 소개합니다.
대량 TTS가 필요한 경우
어떤 프로젝트든 방식은 같습니다. 텍스트 한 줄이 들어가고, 오디오 파일 하나가 나옵니다.
- 어학 강좌: 플래시카드용으로 단어나 문장마다 파일 하나.
- 앱과 게임: 인터페이스 안내, 힌트, 캐릭터의 짧은 대사.
- 쇼핑몰과 카탈로그: 상품마다 짧은 음성 설명.
- 공공장소: 여러 언어의 안내 방송 세트나 오디오 가이드 지점.
목소리를 무료로 들어 보기
수백 줄을 만들기 전에, 쓸 목소리마다 페이지를 열어 30~100자의 전형적인 행을 붙여 넣고 언어를 고른 뒤 생성 버튼을 누르세요. 몇 초 만에 목소리가 맞는지 알 수 있습니다. 계정은 필요 없습니다.
스프레드시트 준비
숫자, 이름, 약어는 행마다 들려야 하는 대로 쓰세요.
- 오디오 파일 하나당 한 행. file, text, voice, lang 같은 열을 두세요.
- 공백 없는 고유한 파일 이름: card_0412, prompt_checkout_de 등.
- 목소리는 기본 이름 M1~M5, F1~F5나 목소리 파일 경로로, 언어는 ko, en, ja 같은 코드로.
- 표는 UTF-8 CSV로 저장해야 한글과 특수 문자가 깨지지 않습니다.
모든 행을 오프라인으로
python -m pip install superclonica-cpu로 무료 엔진을 설치하세요(NVIDIA 그래픽 카드라면 superclonica-gpu-cuda). 그다음 Python에서 import csv, from superclonica import Superclonica, tts = Superclonica() 뒤에 반복문 하나로 표 전체를 읽힙니다: for row in csv.DictReader(open("lines.csv", encoding="utf-8")): audio, rate = tts.synthesize(row["text"], voice=row["voice"], lang=row["lang"], seed=7, normalize=True); tts.save(row["file"] + ".wav", audio). seed를 고정하면 몇 번을 실행해도 같은 행은 같은 소리가 나고, normalize=True는 모든 파일의 음량을 맞춥니다. Python API는 확장자에 따라 WAV, FLAC, OGG로 저장합니다. MP3가 필요하면 행마다 명령줄 엔진을 출력 이름 .mp3로 실행하세요. 모두 오프라인이고 글자 수 제한이 없습니다.
확인, 수정, 다시 실행
넘기기 전에 목소리와 언어별로 몇 개씩 들어 보세요. 잘못 읽힌 행이 있으면 CSV에서 표기를 고치고 그 행만 다시 만드세요. 같은 seed라면 손대지 않은 행은 그대로입니다. CSV를 프로젝트와 함께 버전 관리해 두면 언제든 오디오를 다시 만들 수 있습니다.