-
gTTS를 이용해 텍스트 문서를 음성 파일로 저장하기.정보얻기/정보 2024. 4. 24. 12:14반응형
gTTS 모듈 설치 방법.
pip install gtts
gTTS 모듈이 잘 설치됐는지 확인 방법.
pip freeze
text.txt 문서 파일이 있는 폴더에서 아래 명령어 실행.
gtts-cli -l "ko" -f "text.txt" -o "output.wav"
bash 명령어를 이용해 바로 실행 방법.
#!/bin/bash # Set language to Korean(언어 설정) lang="ko" # Input text file(입력 파일명) input_file="text.txt" # Output filename template(출력 파일명) output_filename_template="output%03d.wav" # Starting count(시작 정수) count=1 # Check if output file exists(001 파일이 없으면 001로, 있으면 002로 파일 만듬) output_filename=$(printf "$output_filename_template" $count) while [ -f "$output_filename" ]; do ((count++)) output_filename=$(printf "$output_filename_template" $count) done # Generate text-to-speech using gTTS-cli(text.txt 내용을 output???.wav로 저장함) gtts-cli -l "$lang" -f "$input_file" -o "$output_filename" echo $count echo "음성 변환이 완료되었습니다. Output file: $output_filename"
위 내용을 text_to_wav.sh로 저장합니다.
chmod -x text_to_wav.sh
위 명령어로 text_to_wav.sh를 실행 파일로 설정합니다.
bash text_to_wav.sh
위 명령어를 사용하시면 텍스트 파일을 음성 파일로 변환 가능합니다.
output001.wav 파일을 만듬.
같은 파일이 있을 경우, output002.wav 파일을 만듭니다.
이런 식으로 output001.wav에서 output999.wav까지 파일을 만듭니다.파이썬 프로그래밍을 이용해 변환하려면,
# gTTS 라이브러리 설치 from gtts import gTTS import os # TTS 함수 def tts(text, lang, out_file): """텍스트를 음성으로 변환하여 파일로 저장하는 함수""" # 언어 설정 if lang == "ko": voice = gTTS(text, lang="ko") elif lang == "en": voice = gTTS(text, lang="en") else: raise ValueError("지원하지 않는 언어입니다.") # 음성 파일 저장 voice.save(out_file) # TXT 파일 읽기 def read_txt(file_path): """TXT 파일을 읽어 텍스트로 반환하는 함수""" with open(file_path, "r") as f: text = f.read() return text # main 함수 def main(): # 텍스트 파일 경로 file_path = "text.txt" # 텍스트 읽기 text = read_txt(file_path) # 언어 설정 lang = "ko" # a 변수 초기화 a = 0 # 반복문 while os.path.exists("output{:03d}.wav".format(a)): a += 1 # 음성 파일 저장 tts(text, lang, "output{:03d}.wav".format(a)) # 음성 파일 저장 완료 메시지 if os.path.exists("output{:03d}.wav".format(a)): print("음성 파일 생성 완료!") if __name__ == "__main__": main()
위 내용을 text_to_wav.py로 저장합니다.
python3 ./text_to_wav.py
실행하시면 됩니다.
이 프로그램도 위와 같이 output001.wav에서 output999.wav까지 파일을 만듭니다.반응형'정보얻기 > 정보' 카테고리의 다른 글
리눅스 민트에서 바탕화면 이미지 확인 방법 (0) 2024.04.24 Linux Mint 21.2에서 21.3 업그레이드 (0) 2024.02.17 sorb Tistory blog 'Privacy Policy' (0) 2023.12.15 윈도우용 NTFS 하드, 리눅스에서 자동 마운트 (1) 2023.10.29 Swap Memory (1) 2023.10.23