linux下的以電腦讀文字檔發出聲音

一開始是用espeak,很容易使用,但是聽起來太像機器人了。
voice在/usr/share/espeak-data下 
espeak -f File 就可以讀出File的內容。速度,音量也都很好設定,man espeak就知道了。 

現在正在試festival,發音比espeak好多了,但是男聲有點混濁。 
festival –tts File 可以讀出File的內容。
voice在/usr/share/festival/voice中 

命令 festival> (voice.list) ;列出voices

設定檔.festivalrc 

設定速度,在.festivalrc中加入 

(Parameter.set ‘Audio_Command “aplay -q -c 1 -t raw -f s16 -r $(($SR*140/100)) $FILE”)

The 140/100 means 140% of original speed which seems about right to me for most texts.

設定聲音,在.festivalrc中加入 

(set! voice_default ‘voice_us1_mbrola) 

測試,以festival播今天的日期和時間

echo `date ‘+%A %B %d %H %M %S’`|festival –tts

轉到wave檔

text2wave -o output.wav text.to.speak.txt -eval “(voice_us1_mbrola)”

###待測試之其他語音軟體

Simon Flexible speech recognition software
Julius Two-pass large vocabulary continuous speech recognition engine
Jovie Text-to-speech system for KDE
Orca Screen Reader Scriptable screen reader
Praat Speech Analyser Sofware for speech analysis and synthesis

分類: 多媒體。這篇內容的永久連結

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *