AI
TTS / Librosa
jennyf
2022. 7. 7. 20:48
TTS는 text to speech 로 텍스트를 음성으로 변형시키는 것입니다.
아주아주 간단하게 단 한글자만을 음성으로 변형해보는 것 그리고 여러 글자인 경우 두 가지 실습을 진행합니다.
먼저 한 글자인 경우 입니다.
Librosa는 python에서 많이 쓰이는 음성 파일 분석 프로그램입니다.
librosa library를 설치하여 불러옵니다.
librosa.load method는 audio file 에서 waveform x와 sampling rate sr을 불러옵니다.
x는 1차원 numpy float array이고, sr은 초당 sample의 수를 의미하며 default 22050Hz를 갖습니다.
오디오 파일을 다음과 같이 불러올 수 있습니다.
다음은 여러글자인 경우입니다.
이렇게 각각의 파일이 생성된 다음 다시 한번 코드를 돌려보면 이때는 파일이 다 존재하기 때문에 다운로드할 필요가 없습니다.
"안녕하세요"가 담긴 mp3파일을 확인할 수 있습니다.
위의 그래프는 sample을 보여준 것이고 아래 그래프는 display.waveplot을 이용하여 x 축이 시간으로 변한 그래프를 그려줍니다.
librosa.display를 이용하면 waveform을 시각화할 수 있습니다.
코드는 아래 github을 참고해주세요.
https://github.com/HyeJeongIm/AI_HUB_yangjae/tree/main/week01/gtts