espeak를 사용하여 텍스트 파일을 mp3 파일로 변환하고 싶습니다. 이렇게 할 수 있습니까? espeak를 사용하여 텍스트를 노래로 변환 할 수있는 노래 합성 쉘 스크립트를 만들려고합니다.
espeak를 사용하여 텍스트 파일을 mp3 파일로 변환하고 싶습니다. 이렇게 할 수 있습니까? espeak를 사용하여 텍스트를 노래로 변환 할 수있는 노래 합성 쉘 스크립트를 만들려고합니다.
답변:
이를 수행하는 두 가지 방법이 있습니다. wav
파일 만 원하면 첫 번째 예를 mp3
보고 변환은 두 번째 예를 참조하십시오.
1) 옵션을 사용 espeak
하여 텍스트 파일을 공급 -f
한 다음 옵션을 사용하여 --stdout
데이터 스트림을 파일로 리디렉션하여 wav
모든 오디오 플레이어에서 올바르게 재생 되는 유효한 파일 을 만듭니다 .
espeak -f mytext --stdout > myaudio
file
명령 ( file myaudio
)으로 결과 확인 :
myaudio: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 22050 Hz
2) mp3 변환을 원하면 프로그램을 사용하여 파일을 변환해야합니다 (또는 파일을 저장하고 audacity
mp3로 내보내십시오). 내가 사용하고 ffmpeg
(망할 놈의 버전),하지만 당신은 어떤 프로그램을 사용하고 그냥 옵션을 변경할 수 있습니다 :
espeak -f myfile --stdout | ffmpeg -i - -ar 44100 -ac 2 -ab 192k -f mp3 final.mp3
검사 결과 file final.mp3
:
final.mp3: Audio file with ID3 version 2.4.0, contains: MPEG ADTS, layer III, v1, 192 kbps, 44.1 kHz, Stereo
실제로 이것을 달성하는 스크립트를 작성했습니다 ... 그리고 그것은 꽤 잘 작동했습니다.
https://github.com/divVerent/ecantorix
예 : https://github.com/downloads/divVerent/ecantorix/sarastro.ogg
--stdout
eSpeak를에 옵션 대신 오디오 장치를 통해 퍼팅의 표준 출력하는 오디오 데이터를 기록 할 말할 것이다. 거기에서 올바른 형식으로 변환하기 위해 예를 들어 ffmpeg로 파이프 할 수 있습니다.