Bir metin dosyasını espeak kullanarak mp3 dosyasına dönüştürmek istiyorum. Bunu yapmak mümkün mü? Bir şarkıya metin dönüştürebilirsiniz bir şarkı sentez kabuk komut dosyası oluşturmak için espeak kullanmaya çalışıyorum.
Bir metin dosyasını espeak kullanarak mp3 dosyasına dönüştürmek istiyorum. Bunu yapmak mümkün mü? Bir şarkıya metin dönüştürebilirsiniz bir şarkı sentez kabuk komut dosyası oluşturmak için espeak kullanmaya çalışıyorum.
Yanıtlar:
Bunu yapmanın iki yolu vardır; sadece bir wavdosya istiyorsanız , ilk örneğe mp3bakın ve dönüşüm için ikincisine bakın.
1) Seçeneği espeakkullanarak metin dosyanızı besleyin -f, ardından --stdoutseçeneği kullanın ve wavherhangi bir ses çalarda doğru şekilde çalışan geçerli bir dosya oluşturmak için veri akışını dosyaya yönlendirin .
espeak -f mytext --stdout > myaudio
Sonuç file( file myaudio) komutuyla kontrol edildi :
myaudio: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 22050 Hz
2) Bir mp3 dönüştürme istiyorsanız, dosyanızı dönüştürmek için bir program kullanmanız gerekir (veya sadece kaydedin audacityve mp3 olarak dışa aktarın). Ben kullandım ffmpeg(git versiyonu), ancak herhangi bir programı kullanmak ve sadece seçenekleri değiştirebilirsiniz:
espeak -f myfile --stdout | ffmpeg -i - -ar 44100 -ac 2 -ab 192k -f mp3 final.mp3
Sonuç şunlarla kontrol edildi 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
Aslında bunu başarmak için bir senaryo yazdım ... ve oldukça iyi çalıştı.
https://github.com/divVerent/ecantorix
Örnek: https://github.com/downloads/divVerent/ecantorix/sarastro.ogg
--stdoutESpeak seçeneği yerine sesli cihaz üzerinden koyma stdout'a ses verilerini yazmak için bu söyleyecektir. Buradan, uygun biçime dönüştürmek için örneğin ffmpeg'e bağlayabilirsiniz.