본문 바로가기
인공지능/Lang Chain

간단한 Python TTS 애플리케이션 만들기: gTTS 활용하기

by makepluscode 2024. 6. 29.
반응형

간단한 Python TTS 애플리케이션 만들기: gTTS 활용하기

Python을 사용하여 간단하지만 강력한 Text-to-Speech (TTS) 애플리케이션을 만드는 방법을 알아보겠습니다. 우리는 Google의 gTTS (Google Text-to-Speech) 라이브러리를 활용하여 텍스트를 자연스러운 음성으로 변환하는 과정을 정리합니다.

간단한 Python TTS 애플리케이션 만들기

왜 TTS인가?

TTS 기술은 다양한 분야에서 활용되고 있습니다. 예를 들어:

  1. 접근성 향상: 시각 장애인을 위한 스크린 리더
  2. 교육: 언어 학습 애플리케이션
  3. 사용자 경험: 내비게이션 시스템이나 가상 비서
  4. 콘텐츠 소비: 오디오북이나 뉴스 읽어주기 서비스

이러한 다양한 응용 분야 때문에 TTS는 많은 개발자들에게 흥미로운 주제입니다.

gTTS 소개

gTTS는 Google Translate의 TTS API를 쉽게 사용할 수 있게 해주는 Python 라이브러리입니다. 무료로 사용할 수 있고, 다양한 언어를 지원하며, 사용법이 간단하다는 장점이 있습니다.

코드 살펴보기

자, 이제 실제 코드를 살펴보겠습니다:

from gtts import gTTS

def text_to_speech(text, output_file, lang='en'):
    # gTTS를 사용하여 텍스트를 음성으로 변환
    tts = gTTS(text=text, lang=lang)
    tts.save(output_file)
    print(f"Audio content written to '{output_file}'")

if __name__ == "__main__":
    # 주어진 텍스트 (120열에서 개행)
    text = ("The transformer is a fast and efficient deep learning architecture used for converting text into numerical representations. It has \\"
            "been widely adopted for training large language models and has led to the development of pre-trained systems like GPTs and BERT")

    print("Text to be converted to speech:")
    print(text)

    output_file = "transformer_description.mp3"
    text_to_speech(text, output_file)

    print(f"\nTTS conversion complete. The audio file has been saved as '{output_file}'.")
    print("You can now play this file to hear the text being read aloud.")

코드 설명

  1. 라이브러리 임포트: from gtts import gTTS로 필요한 클래스를 임포트합니다.
  2. TTS 함수 정의: text_to_speech 함수는 텍스트, 출력 파일명, 언어 코드를 인자로 받아 음성 파일을 생성합니다.
  3. 텍스트 정의: 변환할 텍스트를 정의합니다. 여기서는 트랜스포머 모델에 대한 설명을 사용했습니다.
  4. TTS 실행: 정의된 함수를 호출하여 텍스트를 음성으로 변환하고 파일로 저장합니다.

실행 방법

  1. gTTS 설치:
  2. pip install gTTS
  3. 코드를 Python 파일(예: ex4-gTTS.py)로 저장합니다.
  4. 터미널에서 다음 명령어로 실행합니다:
  5. python ex4-gTTS.py
  6. 실행이 완료되면 'audio.mp3' 파일이 생성됩니다.

주의사항 및 팁

  • gTTS는 인터넷 연결이 필요합니다.
  • 생성된 음성의 품질은 Google의 TTS 엔진에 따라 달라집니다.
  • 다른 언어로 변환하려면 lang 매개변수를 변경하세요 (예: 한국어는 'ko').
  • 긴 텍스트의 경우 처리 시간이 길어질 수 있습니다.

확장 가능성

이 기본적인 예제를 바탕으로 다양한 확장이 가능합니다:

  1. 웹 인터페이스 추가
  2. 다국어 지원
  3. 음성 속도나 피치 조절 기능 추가
  4. 텍스트 파일 읽기 기능 구현

실행결과

위 코드르 실행하면 텍스트를 음성으로 변환하고 audio.mp3 파일로 저장합니다.

실행결과

이 튜토리얼에서는 gTTS를 사용하여 간단한 TTS 애플리케이션을 만들어 보았습니다. 이 기술은 다양한 분야에서 활용될 수 있으며, 여러분의 프로젝트에 음성 기능을 쉽게 추가할 수 있게 해줍니다. TTS 기술은 계속 발전하고 있으며, 더 자연스럽고 다양한 음성을 제공하는 방향으로 나아가고 있습니다. 해피 코딩하세요!

반응형