Logo
Junwoo
2024-08-27 12:38:59

비하인드
모든 TTS 엔진에서 한국어를 제대로 읽게하기 위한 UX 디테일

비디오스튜에는 다양한 AI 보이스들이 탑재되어 있습니다. Google Wavenet, Amazon Polly, KT AI Voice, Naver Clova, Azure, ElevenLabs까지…

그렇다보니 자연스레 파생되는 이슈는 다들 학습된 모델이 달라서 똑같은 문장이 주어져도 읽는 방식이 미묘하게 다르다는 것입니다. 특히 단위를 읽을 때 그 차이가 두드러졌습니다.

이 포스팅을 통해 TTS 생성 시 한국어로 단위를 읽을 때 제대로 읽기 위해 고려했던 점들에 대해 이야기해보고자 합니다.

측정 단위 제대로 읽게 하기

TTS 엔진들을 다양하게 사용하다보니, 예를 들어 "100kg"이라는 표현을 읽을 때도 각 엔진들은 제각각으로 읽는 이슈가 있었습니다. "백 케이쥐"라고 읽는 엔진도 있고, "백 크흐..."라고 말끝을 흐리는 AI도 있었죠. (AI도 당황하면 말끝을 흐리나…)

물론 "백 킬로그램"이라고 정확하게 읽는 엔진도 있습니다.

그래서 이러한 단위들을 라이브러리화해서 전처리를 하는 프로세스를 개발했습니다. 모든 엔진들이 동일하게 읽도록 하기 위함이었죠.

  • 길이/거리: m, cm, km, mm, nm
  • 부피: l, ml, kl
  • 무게/질량: g, kg, mg
  • 전기 관련: V, MV, mV, A, MA, mA, Ω, MΩ, mΩ, VA, V/cell, V/m, Var
  • 데이터 용량: B, KB, MB, GB, TB
  • 기타 물리량: mol, N, N/C, rad, Wb
  • 시간: s, sec
  • 전력: W, kW, MW, kVA, mVA
  • 주파수: Hz, kHz, MHz, GHz
  • 온도: °C, ℃
  • 각도: °
  • 조도: lx
  • 백분율: %


숫자 제대로 읽게 하기

이렇게 서비스를 운영하다보니, 생각치 못한 이슈에 또 봉착하게 되었습니다. (한국어는 정말 매력덩어리..)

한국어에서는 숫자를 읽는 방식이 두 가지라는 점이죠. 우리는 본능적으로 사용하고 있어 잘 느끼지 못할 수 있습니다.

예를 들어, 시간을 말할 때 "10시 10분"은 "열 시 십 분"으로 읽죠. 왜죠…?

그리고 일반적인 숫자는 "일, 이, 삼"과 같은 한자어로 읽지만, 뒤에 수량을 나타내는 단위(수량사라고 해요. 저도 처음 들어봤어요…)가 붙으면 "한 개, 두 개, 세 개"로 읽게 됩니다. 공식적으로 수치를 재는 단위는 한자어를 쓰고요. (예: 10cm = “십 센치미터”)

자, 제가 숫자를 하나 드려볼께요. “90개”. 어떻게 읽으시나요?

원칙적으로는 90개까지는 “아흔 개”라고 읽는 것이 맞습니다. 아마 “구십 개”라고 읽으신 분들도 있으실꺼에요. 숫자가 커질 수록 우리가 일반적으로 더 편한 방식이 있기 마련이죠.

작은 숫자로 생각해볼까요? “9개”. 네, 이건 모두가 다 “아홉 개”라고 읽으셨을 것입니다.

이 원칙에 따라서 1~99까지는 고유한글로 읽는 방식으로 전처리 프로세스를 개발하게 되었습니다. 하지만 이는 말그대로 원칙적인 것이고, 고객들의 피드백에 따라 이 기준을 변경할 가능성을 열어두고 있습니다. 40개라면 “마흔 개”보다 “사십 개”가 더 자연스럽게 받아들여질 수 있으니까요.

어쨋든 일관된 사용경험을 위해 “하나, 둘, 셋”의 고유한글에 대응되는 단위 라이브러리를 만들게 되었습니다.

  • 일반적인 수량: 개, 명
  • 동물: 마리
  • 식물: 그루, 송이
  • 의류/신발: 켤레, 벌
  • 기계/차량: 대
  • 용기: 병, 잔, 접시, 그릇, 가마
  • 긴 물건: 자루, 줄
  • 평평한 물건: 장
  • 책/문서: 권, 문장, 글자
  • 음식: 조각, 접시
  • 묶음 단위: 다발, 묶음, 뭉치, 박스
  • 순서: 번
  • 작은 물건: 톨
  • 건물: 채
  • 시간: 시
  • 나이: 살
  • 무게: 근, 돈
  • 종류: 가지
  • 기타: 마디, 송이

이 라이브러리는 TTS 서비스를 구현하려는 분들이라면 참고해주세요. 단, 지금도 끊임없이 고객 피드백을 통해 생각치 못한 단위들이 발견되고 있어서 완전한 버전은 아님을 말씀드립니다.

UX의 디테일 = SaaS의 성공

수량사라는 처음 듣는 표현을 접하면서, 한국에서 동영상 편집 SaaS 솔루션을 서비스하면서 많은 어려움이 있었는데, 또 한번 느끼게 되는 계기가 되었습니다. 정말이지 한국어는 변화무쌍하고 대단한 언어입니다…

동시에 영어권 서비스가 부럽다는 생각도 들었지만, 그 쪽은 또 그 쪽 나름대로의 고충이 있겠죠.

물론 비디오스튜에는 [텍스트 수동 지정]이라는 기능이 있습니다. 화면에 보이는 것과 상관없이 TTS를 생성하는 방법이죠.

< 화면에 보여지는 자막과 상관없이 TTS에서 읽을 소리를 설정하기 >

이 방법을 통해서 원하는대로, 소리나는대로 적어주면 되니까 TTS가 더 자연스럽게 발음하도록 유도할 수도 있고 잘못 읽는 단위를 사용자가 직접 수정할 수도 있습니다.

그럼에도 저희가 이렇게 디테일에 집중하는 이유는, 이런 작은 차이들이 서비스의 성장을 결정짓는다는 확신 때문입니다.

사용자는 숫자 표현이 포함된 문장을 입력하는 순간 어떻게 읽겠다라는 생각이 있습니다. 일단 그대로 생성되지 않는 다면 일차적으로 문제일 것이고요. 그걸 추가 편집을 하지 않아도 생각했던 그대로의 결과물이 가장 빠르게 나오도록 하는 것이 저희가 지향하는 UX의 종착점입니다.

앞으로도 계속 이렇게 저희가 하는 UX적인 고민들을 포스팅해보도록 하겠습니다. 앞서 말씀드린 것 처럼 모든 서비스들이 상향평준화되고 있는 현 상황에서는 이러한 디테일에 대한 고민이 서비스의 명암을 가른다고 믿으니까요.

게시물로 이동
🎓 비디오스튜 크리에이터들이 자주쓰는 기능 총정리 비디오스튜를 적극적으로 활용하는 크리에이터들은 비디오스튜를 어떻게 사용하고 있을까요?비디오스튜 활용사례를 통해 만나게 된 다양한 크리에이터분들의 실제 사용기를 들어보며 네 가지 핵심 기능을 도출할 수 있었는데요.이번 포스팅에서는 비디오스튜로 극적인 효율성, 생산성을 느끼고 싶다면 꼭 아...
비디오스튜 크리에이터들이 자주쓰는 기능 총정리
Junwoo 2025-06-24
📣 비디오스튜 팀원들은 모두 다 아는 50만 크리에이터 고객님의 유튜브 성장기 비디오스튜는 사람이 직접 상담드리는 온라인 채팅 상담을 운영하고 있습니다. 저희 팀원들끼리 이야기를 할 때 가장 기억에 남는 고객님을 뽑으라면 닉네임 ‘데헷이’님이 항상 언급되는데요.사실 무슨 채널을 운영하시는지 어떻게 하시는지는 전혀 몰랐고, 항상 빡센 기능 제안을 하시는 것으로 유명...
비디오스튜 팀원들은 모두 다 아는 50만 크리에이터 고객님의 유튜브 성장기
Junwoo 2025-06-16
🎓 2025년형 Best AI Tools for Content Creation (실전 활용 가이드) 왜 지금 “AI 툴 스택”을 다시 짜야 할까?전통적으로 운영하는 블로그 및 뉴스레터부터 인스타그램 릴스, 유튜브 쇼츠, 틱톡의 동영상 소셜 미디어… 심지어 X와 쓰레드까지 반드시 돌아가야 할 채널은 늘어났지만, 예산과 인력은 그대로죠.하지만 그 때 한 줄기 빛처럼 각종 AI 솔루션들이 ...
2025년형 Best AI Tools for Content Creation (실전 활용 가이드)
Junwoo 2025-06-11
🎓 콘텐츠 마케터를 위한 Best Text to Video AI는? 이 글은 “best text to video ai”를 검색해 헤매고 있는 모든 콘텐츠 마케터에게 보내는, 비디오스튜 운영자 Jun의 솔직·장황·친절한 안내서입니다.“AI 영상 생성”이라는 말에 설렜지만, 금세 지쳐버린 이유최근 Veo3·Sora 같은 초거대 모델이 “문장만 던지면 영화 ...
콘텐츠 마케터를 위한 Best Text to Video AI는?
Junwoo 2025-06-09
🗞️ [Update] AI보이스의 언어별 최적화 각 언어별 AI보이스의 최적화 작업이 진행 중에 있습니다.기존에는 영어 목소리도 멀티링귀얼이 가능한 엔진이라면 다른 언어로의 자연스러운 발화가 가능했습니다.하지만 각 언어별로 숫자를 읽는 법이나 단위 등의 발음 등을 정교화하는 업데이트가 진행됨에 따라서, 정확한 사용을 위해서는 TTS ...
[Update] AI보이스의 언어별 최적화
Junwoo 2025-06-07
🗞️ [Update] MP3 다운로드 기능 작업하고 계신 프로젝트에서 소리만 추출하여 MP3 파일로 다운로드할 수 있는 기능이 추가되었습니다.MP3 다운로드를 위해서 렌더링을 먼저 해주셔야 합니다. (영상 다운로드와 동일)그 뒤 드롭다문(▼) 버튼을 눌러 MP3 파일을 다운로드할 수 있습니다.영상에 포함되어 있는 모든 소리(배경...
[Update] MP3 다운로드 기능
Junwoo 2025-05-29
🗞️ [Update] AI 이미지 생성 스타일 선택 기능 추가 이제 AI 이미지 생성 기능 중 일러스트레이션 카테고리에서 다양한 일러스트를 생성할 수 있습니다. (이미지 생성 기능은 퍼스널 플랜 이상에서만 이용 가능합니다.)각 스타일 예시일러스트레이션SDXL 모델을 사용하며 수채화 느낌의 배경, 연필 선이 강한 스케치 느낌이 특징입니다.벡터Open...
[Update] AI 이미지 생성 스타일 선택 기능 추가
Junwoo 2025-05-22
📣 15만 유튜브 크리에이터로 활동 중인 55세 전업주부 ‘잘하자’님의 비디오스튜 활용기 ‘잘하자’님은 비디오스튜 초창기부터 열심히 이용해주시던, 저희 입장에서는 충성고객이셨습니다. 1년 이상 꾸준히 사용해주고 계신 시점에서 인터뷰 요청을 드렸었죠. 그 때 돌아온 대답은 “실버 버튼 받으면 그때 할께요”. 였습니다.그리고 또 시간이 흘러 정말로 실버버튼을 받게 되셨고, 저희...
15만 유튜브 크리에이터로 활동 중인 55세 전업주부 ‘잘하자’님의 비디오스튜 활용기
Junwoo 2025-05-19
[중단]