我想使用espeak将文本文件转换为mp3文件。有可能这样做吗?我正在尝试使用espeak创建一个可以将文本转换为歌曲的歌曲合成shell脚本。
发布于 2012-08-21 23:40:20
有两种方法可以做到这一点;如果您只想要一个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 Hz2)如果您想要mp3转换,您必须使用一个程序来转换您的文件(或者简单地将它保存在audacity中并导出为mp3)。我使用过ffmpeg ( git版本),但是您可以使用任何程序,只需更改选项:
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发布于 2012-10-22 10:09:49
我写了一个剧本来实现这个..。结果效果很好。
https://github.com/divVerent/ecantorix
示例:https://github.com/downloads/divVerent/ecantorix/sarastro.ogg
发布于 2015-12-24 22:24:45
espeak现在有一个输出到wav的-w选项。
(之后仍然需要转换为mp3。)
espeak -f foo.txt -w foo.wavhttps://askubuntu.com/questions/178736
复制相似问题