일하는/AI, ML

GTTS (Google Text to Speech)

김논리 2021. 2. 3. 14:12

gtts.readthedocs.io/en/latest/index.html

 

gTTS — gTTS documentation

© Copyright 2014-2020 Pierre Nicolas Durette Revision b36103df.

gtts.readthedocs.io

gTTS (Google Text-to-Speech) API는 Google에서 제공하는 TTS 서비스로, pip를 이용하여 해당 모듈 설치 후 사용이 가능하다. (해당 모듈은 인터넷 사용이 가능해야 한다)

Install

다음 명령어를 사용하여 gTTS 모듈을 설치한다.

$ pip install gTTS

How to use

아래와 같이 사용이 가능하다.

from gtts import gTTS

tts = gTTS(
  text='안녕하세요? 만나서 반가워요',
  lang='ko',
  slow=False
)

tts.save('test.mp3')

저장된 파일을 재생하면, 남자 성우의 목소리로 음성합성이 이루어진 것을 확인할 수 있다.

Parameters

사용 가능한 파라미터는 다음과 같다.

  • text (string): 입력으로 사용될 텍스트
  • tld (string): Google Translate host의 최상위 domain (기본값은 google.com으로 차단될 경우 다른 domain으로 변경하여 사용할 수 있다.)
  • lang (string, optional): 입력 텍스트의 언어 (기본값은 en)
  • slow (bool, optional): 느리게 설정 (기본값은 False)
  • lang_check (bool, optional): 언어 유효성 체크 (기본값은 True)
  • pre_processor_funcs (list): 입력 텍스트를 tokenize 하기 전 사전 처리를 위한 함수 목록. 기본값은 다음과 같다.
[
  pre_processors.tone_marks,
  pre_processors.end_of_line,
  pre_processors.abbreviations,
  pre_processors.word_sub
]

 

  • tokenizer_func (callable): 문자열을 입력으로 받아 문자열(token) 리스트로 반환하는 함수 목록 기본값은 다음과 같다.
Tokenizer([
  tokenizer_cases.tone_marks,
  tokenizer_cases.period_comma,
  tokenizer_cases.colon,
  tokenizer_cases.other_punctuation
]).run

Methods

  • get_bodies(): TTS API로 전송될 request body를 가져온다.
    • Returns (list): request body list
  • get_urls() : TTS API로 전송될 url을 가져온다.
    • Returns (list) : url list
  • save(savefile) : TTS API request를 수행하고 그 결과를 파일에 쓴다.
    • Parameters (savefile:string) : mp3 데이터를 저장할 파일 경로 및 이름
  • write_to_fp(fp) : TTS API request를 수행하고 그 결과 bytes를 file-like object에 쓴다.
    • Parameters (fp:file object) : mp3를 저장할 file-like object

'일하는 > AI, ML' 카테고리의 다른 글

FastText to spaCy  (0) 2021.05.25
spaCy  (0) 2021.05.25
Rasa NLU Tutorial  (0) 2021.01.21
NLTK Tutorial  (0) 2021.01.21