본문 바로가기

IT/컴온

음성 엔진의 사전 파일 수정 변경 테스트 - Balabolka


음성엔진 사전 파일 손을 보다가

음성 엔진 사전 파일 수정


1. 음성 엔진 사전 파일의 파일 형식 (텍스트 파일)
(실제 이 음성 엔진에서 쓰는 사전 파일은 텍스트 형식이 아니어서 컴파일을 해야함)

음성 엔진 사전 파일을 수정하고 저장 (UTF-8 형식임)

다시 불러들이면 ANSI로 인식한다. 이것 때문에 ANSI로 저장하는 실수를 할 뻔 했다.(문자가 깨져버리죠)

그 뒤 앞쪽에 한글로 설명을 달아놓아서 그 부분의 문자가 깨져 보이면 바로 알아차리고 파일 형식이 UTF-8임을 알리고 즉, UTF-8로 인식해서 표시하게 하여 수정을 한 뒤 저장


2. 음성 엔진 사전 파일 편집에 사용하는 편집기

원래 보통의 텍스트 문서 작업은 Akelpad로 한다.

Akelpad 에서 ANSI로 인식.
UTF-8로 재인식 시키는 기능이 없는 것 같다. 문서 형태를 ANSI <-> UTF-8 로 전환하는 것은 있는데 이 기능은 원래 ANSI 파일을 UTF-8로 변환(또는 반대로) 하는 기능이지 인식이 잘못되었을 때 쓸 수 있는 기능이 아니다.


Notepad++에서도 ANSI로 계속 잘못 인식하지만 잘 못 인식했으니, UTF-8 형식으로 표시하게 하면 된다.
이것 때문에 이 작업은 Notepad++ 로 해야만 한다.
아무리 해도 Notepad++ 에서 문서를 읽어들이면 ANSI로 계속 잘못 인식한다.


3. 착각

이 음성 엔진의 사전 파일은 수정한 뒤 컴파일을 해야한다. 그런 이유로 UTF-8 형식을 유지해야 한다. 거기다가 원래 한국어 음성 엔진이 아니기 때문에 사전 파일의 발음 지정 형식은 이렇다.

숫자 6, 7, 8 을 사전 파일에 등록하려면

_6 j'uk
_7 ch'il
_8 ph'al

한글을 쓸 수 없다는 것. (그렇다고 영어도 아니다, 그렇다고 일반 발음기호도 아니다...)

이 글을 읽으시는 분들은 이전 글 "정리도 하고" 에서 아무리 해도 숫자 만 단위로 읽게 하는 방법을 찾지 못한 이유를 대충 이해할 수도 있을 듯 하다.


이렇게 사전을 수정한 뒤 컴파일까지 해야 하다보니 수정 작업을 하면서, 음성 엔진 자체를 수정하는 듯한 착각을 한다.
(이 사전 파일이 없으면 아예 읽지를 못함)


음성 엔진 테스트 - Balabolka 에서




음성엔진이나 사용자 발음을 편집하는 경우에는 켜 둘 것



원래 이 옵션을 켜놓았었는데, 테스트 중 Balabolka 가 다운된 적이 있었다. 다시 실행시켜도 실행이 되지 않았다. 환경설정 파일을 지웠다. 실행시키니 정상 실행되었다. 옵션들을 다시 설정하면서 저 부분을 켜놓지 않았다. 음성 엔진을 수정하고 저장한 뒤 읽기 버튼을 누르면 역시 발음이 잘못되어 있다. 다시 수정하고 저장, 읽기를 시켰다 그래도???

그제야 생각났다. 환경설정을 안 한 것이 아닌가?

설정에 들어가 보니 역시나 저 옵션이 꺼져 있다.

일반적인 경우에는 저 옵션을 켤 필요가 없지만, 예전 어느 버전까지였는지 모르겠지만, 저 부분을 체크해놓으면 음성 엔진의 속도나 음조마저 초기화되어서 체크 해제해놓고 썼다.

버전업이 되면서 언제부터인지 속도, 음조, 볼륨은 설정값을 기억하고 있기 때문에 체크해놓고 쓰고 있다.



음성합성 관련 글은 태그 "음성합성"을 선택하면 나오겠죠.