본문 바로가기

개발일지/디스코드 봇

디스코드 봇 개발 일지 2023-06-26 - TTS (Text to Speech) 봇 (1) - 아이디어 구상

 

 

※ 작성자가 작성한 내용이 일부 틀릴 수도 있음 주의

 

※ 작성자가 코드 쓰다가 계속 코드 수정함 주의

 

 

TTS (Text to Speech) 봇을 만들어보기로 계획을 했었다.

 

 

1학기 바쁜 나날 중, 친구하고 이야기하다가 아이디어를 구상했다.

 

지금 군인인 친구들이 디스코드에 폰으로 들어와서

 

(생활관에서 계속 이야기할 수는 없으니까) TTS 봇을 이용해서 말하는데,

 

가끔 여러 명의 친구가 사용할 때마다 같은 목소리가 나와서

 

누가 말하는지 헷갈리는 경우가 자주 발생한다.

 

 

이는 일반적으로 각 '언어' 별로 하나씩 되어있는 것에 의한 것이 대부분이다.

 

하지만 이 또한 각 계정마다 다른 언어를 지정해서 말할 수 있기 때문에,

 

우리가 다른 '목소리'를 지정해서 TTS 봇을 이용한다면

 

같은 한국어 모델을 써도 각 사람마다의 구분이 될 것이다.

 

그것도 말하는 대상의 '실제 목소리'를 가지고 학습한 모델이라면 말이다.

 

 

 

AI 쪽으로 핫한 것은 엄청 많다.

 

 

GPT가 이 분야에서 가장 유명하긴 한데,

 

아는 사람은 알겠지만 GPT만 있는 것이 아니라 저엉말 다양한 분야에

 

꽤 많은 (서로 다른) AI가 우후죽순 생겨나고 있는 추세다.

 

 

그 중에서 우리가 생각해볼 것은

 

'목소리'를 학습하는 것이다.

 

일단은 모르는 사람들을 위해 예시를 하나 들고 왔다.

 

https://www.youtube.com/watch?v=fl6bcgtC6UY&ab_channel=%EC%88%98%EC%88%98%EC%9F%81%EC%9D%B4

 

 

<죠죠의 기묘한 모험> 3부 '스타더스트 크루세이더즈'의 메인 빌런으로 등장하는 'DIO'라는 캐릭터 목소리를

 

학습시켜 만들어낸 모델로 '먼지가 되어'라는 곡의 리메이크 버전 중,

 

'슈퍼스타 K4' 버전의 보컬을 부르게 한 것이다. 그리고 이 버전은 부른 놈과 PD가 실제로 먼지가 되었다.

그리고 AI로 학습된 캐릭터도 작품 상에서 먼지가 된다.

 

뭐, 따지고 보면 성우의 목소리를 AI화 시킨건데, 여러 캐릭터가 있으니깐..

 

 

일단은 이 과정은 다음과 같이 요약할 수 있다.

 

 

 

 

우리 목소리를 음성 데이터로 바꾸면

 

 

이제 여기서 AI 학습 모델을 선택하고, 직접 음성 데이터를 모아서 학습을 시키면

 

우리 목소리를 가지고 노래를 부르게 만들 수 있을 것이다.

 

하지만 우리가 원하는 것은 여기에서 끝이 아니다.

 

 

 

그래서 이걸 TTS 봇으로 어떻게 만들거임?

 

 

일단은 목소리를 바꾸는 과정은 위에서 설명되었으니,

 

앞뒤만 붙여주면 될 것이다.

 

그래서 고안한 방식은 아래와 같다.

 

Prototype, 점선 부분이 TTS 봇이 기능할 파트다. TTS와 AI 목소리 변환을 하나로 합치는 것도 생각중이다.

 

디스코드에서 글자(text) 입력을 하면,

 

이를 받아들이고, 문자열을 일단은 TTS를 통해 음성으로 바꾼다.

 

여기에서는 가능한 방식으로 결정할건데,

 

만약 TTS 자체 프로그램 개발로 바로 Text를 학습시킨 목소리로 음성 파일을 생성할 수 있다면,

 

과정을 하나로 줄일 것이다.

 

 

이에 대해서는 조금 더 찾아보고, 테스트해봐야겠다.

 

그렇게 해서 변환된 음성 파일을 디스코드 음성 채널에서 출력하면 되는 것으로 계획 중이다.

 

계획은 변경될 수 있는데, 아마도 이 과정이 좀 길 수도 있어서

 

줄일 수 있으면 줄이는 방식,

 

만약 파일로 따로 만들지 않고 바로 출력을 할 수 있다면

 

그렇게 하는 식으로 생각 중이다.

 

 

다음 글부터는 이를 직접적으로 하지는 않을 수 있고

 

여러 가지 테스트 및 시행 착오를 겪으면서 구현 방식을 더욱 생각해보고

 

더 좋은 방향으로 진행하고자 한다.

 

 

 

여담

 

생각보다 간단하면서도,

 

직접 만들려고 하면 어려울 수도 있어서

 

이 뒤부터는 하나씩 하느라 진도가 생각보다 안 나갈 수 있다.

 

무엇보다, 작곡과 그림 그리는 것도 좋아해서

 

그것도 하고 싶어서 더 안 나갈 수도 있겠다.

 

하 바쁘다 바빠

728x90