파이썬 강좌(초급)/(실습)실시간 번역기 만들기

(실습)파이썬 실시간 자동 번역기 만들기 - 3.구글 TTS(Text-To-Speech)로 텍스트->음성으로 변환하기

파기차차 2024. 4. 2. 08:16
728x90
반응형
SMALL

ㅁ 개요

 

O 프로그램 소개

 

 

 - 이번 글은 이전글((실습)파이썬 실시간 자동 번역기 만들기 - 2.한글을 영어로 번역하기)에 이은 4번째 글로 구글의 TTS 모듈을 사용하여 텍스트를 음성으로 변환할 것이며, 이전글에서 영어로 번역된 텍스트를 음성으로 읽어 주는 방법에 대하여 설명하겠습니다.

 

 

 

 

O 완성된 프로그램 실행 화면

 

 

 - 최종 완성된 프로그램의 결과화면은 아래와 같습니다.

 

 

1.소스코드를 아래와 같이 실행합니다.

1) 소스내 speak('만나서반갑습니다.')함수의 인자로 던진 텍스트를 구글의 TTS(텍스트->음성) 모듈로 음성으로 들려줍니다.

 

 

샘플 동영상 보기

 

 

 

 


 

ㅁ 세부 내용

 

O 완성된 소스

 

 

소스 : 3.speak.py

 

O 소스 실행

 
 - 소스파일 다운로드 후 cmd, 파워쉘 또는 vscode 등에서 아래와 같이 실행하시기 바랍니다.
 
 > python 3.speak.py

 

 


 

O 주요 내용

 

아래 소스에 대해 간략히 설명하면 다음과 같습니다.

(대부분의 자세한 설명은 주석을 참고 부탁드립니다.)

 

line 2 : 텍스트를 음성으로 변환하는 모듈(gTTS)을 임포트 합니다.

line 7 : .mp3 파일을 실행하게 해주는 playsound 모듈을 임포트 합니다.

(모듈 관련 에러 발생 시 pip install gtts, pip install playsound==1.2.2 모듈을 설치해 줍니다. playsound 모듈은 반드시 해당 버전을 설치하셔야 에러가 발생하지 않으며, 다른 버전은 테스트해보지 않아 에러가 발생하지 않음을 보장하지 못합니다.)

 

 

line 24 : speak("만나서 반갑습니다.") 함수를 호출합니다.

 

line 17 : 인자로 입력된 텍스트를 음성으로 변환하기 위하여 gTTS클래스의 인스턴스를 생성해 줍니다.

line 18 : 음성을 저장할 파일이름을 지정해 주고,

line 19 : 파일을 저장 후

line 20 : playsound(filename)함수로 음성파일을 실행합니다.

line 21 : 파일 재실행시 에러를 방지하기 위하여 저정된 파일을 삭제 합니다.

 

 


 

ㅁ 정리

 

O 우리가 배운 내용

 
 - 오늘 우리는 이전글에서 음성->텍스트로 변환된 한글을 구글 번역 모듈을 사용하여 영어로 바꾸는 방법에 대하여 알아보았습니다.

 

 - 오늘 우리가 배운 내용 중 가장 중요한 부분을 꼽으라면 아래와 같습니다.

tts=gTTS(text=text, lang="ko")로 텍스트를 음성으로 변환할 수 있도록 객체를 생성하였고, playsound.playsound(filename)로 음성파일을 실행해 주었습니다.

def speak(text):
    tts = gTTS(text=text, lang='ko') # 구글의 TTS클래스로 tts객체 생성(텍스트 -> 음성으로 변경)
    filename='voice.mp3' # 파일이름을 정해주고
    tts.save(filename) # 파일을 만들고,
    playsound.playsound(filename) # 해당 음성파일을 실행(즉, 음성을 말함)
    os.remove(filename) # 파일을 삭제

 

 

- 다음 시간에는 구글의 TTS 모듈을 사용하여 텍스트를 음성으로 변환할 것이며, 오늘 글에서 영어로 번역된 내용을 음성으로 읽어 주는 방법에 대하여 설명합니다.

728x90
반응형
LIST