Saya ingin mengonversi file teks ke file mp3 menggunakan espeak. Apakah mungkin melakukan ini? Saya mencoba menggunakan espeak untuk membuat skrip shell sintesis lagu yang dapat mengubah teks menjadi lagu.
Saya ingin mengonversi file teks ke file mp3 menggunakan espeak. Apakah mungkin melakukan ini? Saya mencoba menggunakan espeak untuk membuat skrip shell sintesis lagu yang dapat mengubah teks menjadi lagu.
Jawaban:
Ada dua cara untuk melakukan ini; jika Anda hanya menginginkan wav
file, lihat contoh pertama, dan untuk mp3
konversi lihat yang kedua.
1) Feed espeak
file teks Anda menggunakan -f
opsi, kemudian gunakan --stdout
opsi dan arahkan aliran datanya ke file untuk membuat wav
file yang valid yang diputar dengan benar di pemutar audio apa pun.
espeak -f mytext --stdout > myaudio
Hasil dicek dengan file
perintah ( file myaudio
):
myaudio: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 22050 Hz
2) Jika Anda ingin konversi mp3, Anda harus menggunakan program untuk mengonversi file Anda (atau cukup simpan audacity
dan ekspor sebagai mp3). Saya telah menggunakan ffmpeg
(versi git), tetapi Anda dapat menggunakan program apa saja dan hanya mengubah opsi:
espeak -f myfile --stdout | ffmpeg -i - -ar 44100 -ac 2 -ab 192k -f mp3 final.mp3
Hasil diperiksa dengan 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
Saya benar-benar menulis naskah untuk mencapai ini ... dan akhirnya bekerja dengan cukup baik.
https://github.com/divVerent/ecantorix
Contoh: https://github.com/downloads/divVerent/ecantorix/sarastro.ogg
The --stdout
pilihan untuk eSpeak akan menceritakannya untuk menulis data audio ke stdout bukannya menempatkan melalui perangkat audio. Dari sana, Anda dapat mengirimkannya ke mis. Ffmpeg untuk konversi ke format yang tepat.