-
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까지 파일을 만듭니다.반응형'정보얻기 > 정보' 카테고리의 다른 글
sorb Tistory blog 'Privacy Policy' (0) 2023.12.15 Swap Memory (1) 2023.10.23 grub 한글 깨짐 시 해결 방안 (0) 2022.01.03 OPENTTD 한국 오브젝트 버그 (0) 2019.01.09 N910KKTU2DQJ2 업그레이드 후 와이파이 와 광탈 배터리 (4) 2017.11.24