사용 방법
- 읽어줄 텍스트를 한 번에 1,000자까지 입력하거나 붙여넣으세요.
- 목소리를 고르세요. Kokoro 그룹에는 영어 목소리(미국식·영국식, 각각 여러 개)가 있고, 내 기기가 지원하면 "내장 음성" 그룹에 기기 자체의 목소리가 있는데, 한국어는 여기 있습니다.
- "읽어주기"를 누르세요. Kokoro 목소리는 처음 쓸 때 모델(약 90MB)을 불러오며, 브라우저가 저장해 두어 다음부터는 바로 시작됩니다. 내장 음성은 따로 불러올 게 없어 바로 시작됩니다.
- Kokoro 목소리는 재생기와 .wav 다운로드를 제공합니다. 내장 음성은 건네줄 파일이 없어 기기에서 바로 재생만 됩니다.
예시
"Life is like a box of chocolates."를 Heart 목소리로
→ 또렷하고 자연스러운 미국식 영어 발음영어 목소리가 쓰는 Kokoro 모델은 작은 오픈 웨이트 모델이지만, 영어 음성에서는 훨씬 큰 유료 서비스와 비슷한 평가를 받습니다.
"안녕하세요, 반갑습니다."를 내장 한국어 음성으로
→ 내 기기의 한국어 음성으로 그 자리에서 바로 읽어줌먼저 받아올 것도 없고, 끝난 뒤 저장할 파일도 없습니다. 이 목소리는 이 페이지가 불러온 모델이 아니라 내 기기 안에 있기 때문입니다.
같은 영어 문장을, 속도를 0.7로
→ 같은 목소리로, 음높이는 그대로 두고 더 천천히 읽음속도는 재생 속도만 바꿀 뿐, 녹음 재생기를 느리게 트는 것처럼 음높이는 바뀌지 않습니다.
계산 방식
영어 목소리는 8,200만 개 파라미터의 오픈 웨이트 모델인 Kokoro이며, 이 사이트의 Speech to Text 도구와 같은 오픈소스 프로젝트인 Transformers.js 위에 만들어진 kokoro-js 라이브러리로 작동합니다. 모델과 목소리 파일은 허깅페이스 허브에서 한 번 받아온 뒤 브라우저 자체 캐시가 보관합니다. 텍스트는 영어 전용 발음 변환기가 음소(소리의 단위)로 바꾼 뒤 모델이 이를 소리로 만들며, 이 때문에 이 방식으로는 미국식과 영국식 영어 목소리만 제공됩니다.
한국어는 Kokoro 목소리가 전혀 없어 완전히 다른 방식으로 처리합니다: 이 페이지는 브라우저 자체의 Web Speech API(speechSynthesis)에게 언어가 한국어인 목소리가 있는지 물어보고, 있으면 그 결과를 “내장 음성”이라는 별도 그룹에 나열합니다. 이 중 하나로 읽으면 그 API를 직접 부르는 것이며, 브라우저나 운영체제가 기기의 다른 어떤 앱에서든 하듯 텍스트를 직접 소리로 바꾸므로, 이 페이지가 다운로드로 내어줄 수 있는 파일은 전혀 만들어지지 않습니다.
출처
- Kokoro(hexgrad/Kokoro), 여기서 쓰는 영어 텍스트 음성 변환 모델
- kokoro-js, Transformers.js로 브라우저에서 이를 돌리는 라이브러리
- Web Speech API(speechSynthesis), 내장 음성에 쓰는 표준
자주 묻는 질문
- 제 텍스트가 업로드되나요?
- 어느 쪽이든 아니요. Kokoro 목소리는 소리를 내 기기에서 직접 만들며, 네트워크로 가져오는 건 처음 쓸 때 그 모델 자체의 파일뿐입니다. 내장 음성은 아예 네트워크를 거치지 않습니다. 입력한 텍스트는 기기 밖으로 나가지 않습니다.
- 왜 한국어만 Kokoro가 아니라 "내장" 음성인가요?
- 다른 목소리들이 쓰는 오픈소스 모델 Kokoro는 한국어 음성을 아예 학습한 적이 없어서, 어떤 형태로든 한국어 목소리를 제공하지 못합니다. 영어 전용 목소리에 한국어 텍스트를 억지로 넣어 이상하게 나오게 하는 대신, 이 페이지는 한국어일 때 화면 읽어주기 기능이 쓰는 것과 같은, 내 기기에 이미 있는 음성을 씁니다.
- 내장 음성 결과는 왜 다운로드가 안 되나요?
- 내장 음성은 다른 앱의 텍스트 읽어주기 기능과 똑같이 내 기기가 직접 말하는 것이라, 이 페이지가 건네줄 수 있는 음성 파일로 만들어진 적이 없습니다. 그래서 다운로드할 게 없습니다. 반면 Kokoro 목소리는 실제 .wav 파일을 만들어내므로, 여기서 재생하거나 저장할 수 있습니다.
- "내장 음성" 그룹이 안 보이거나, 한국어 음성이 없어요. 왜 그런가요?
- 내장 음성은 전적으로 내 기기와 브라우저에서 오는 것이지 이 페이지가 제공하는 게 아니라서, 무엇이 있는지(혹은 아예 없는지)는 내 기기에 뭐가 설치되어 있느냐에 달려 있습니다. 내 기기에 한국어 음성이 없다면 이 페이지가 새로 추가해 줄 수는 없으니, 운영체제의 음성 또는 접근성 설정을 확인해 보세요.
- 왜 1,000자 제한이 있나요?
- 이 제한은 Kokoro 목소리에 적용됩니다. 이만큼 작은 모델도 텍스트가 길어지면 만드는 데 시간이 눈에 띄게 오래 걸리고 메모리도 더 쓰기 때문에, 제한을 두어 한 번 요청이 대부분의 기기에서 적당한 시간 안에 끝나도록 합니다. 긴 글은 몇 개로 나눠서 넣으세요. 내장 음성은 이런 제한이 없지만, 아주 긴 글은 기기가 읽는 데 시간이 걸릴 수 있습니다.
- 어떤 목소리를 써야 하나요?
- 영어는 취향의 문제라 몇 개 들어보는 게 좋습니다. Kokoro는 목소리마다 학습에 쓴 음성 분량이 달라 품질 차이가 있으니, 하나가 이상하게 들리면 다른 걸 써 보세요. 한국어는 내 기기가 보통 한두 개만 제공하므로 고를 게 많지 않습니다.
- 결과를 상업적으로 써도 되나요?
- Kokoro 모델은 상업적 이용을 허용하는 Apache License 2.0으로 공개되어 있습니다. 내장 음성은 내 기기의 운영체제가 정한 조건을 따릅니다. 어느 쪽이든 읽게 한 내용을 어떻게 쓰는지는 사용자의 책임입니다.
관련 도구
버전 기록
- 1.1.0 — 한국어를 추가했습니다. Kokoro 모델에는 한국어 음성이 전혀 없어서, 내 기기에 이미 있는 내장 음성으로 읽어줍니다. 내장 음성은 바로 재생되며 다운로드할 파일은 없습니다.
- 1.0.0 — 첫 공개.