summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtools/configure86
1 files changed, 86 insertions, 0 deletions
diff --git a/tools/configure b/tools/configure
index 5c8165c..e6a99a5 100755
--- a/tools/configure
+++ b/tools/configure
@@ -337,6 +337,23 @@ whichadvanced () {
fi
}
+getespeakopts () {
+ langcode=$1
+ i=1
+ espeak --voices=$langcode |grep -v ^Pty | sed -e 's/ \+/ /g' |(while read line; do
+ IFS=" "
+ echo $line| (read pty lang agegender voicename file otherlangs
+ printf "%2d. %s (%s)\n" $i "$voicename" "$agegender"
+ )
+ i=`expr $i + 1`
+ done)
+ printf "Which voice should be used [1]?: "
+ read reply
+ if [ "$reply" = "" ]; then reply=1; fi
+ VOICE=`espeak --voices=$langcode |head -n \`expr $reply + 1\` |tail -n 1 |sed -e 's/ \+/ /g' -e 's/ *[^\ ]\+ [^\ ]\+ [^\ ]\+ \([^\ ]\+\).*/\1/'`
+ ESPEAK_OPTS="-v $VOICE"
+}
+
# Configure voice settings
voiceconfig () {
thislang=$1
@@ -441,6 +458,75 @@ voiceconfig () {
esac
echo "Using $TTS_ENGINE for TTS"
+ if [ "$TTS_ENGINE" = "espeak" ]; then
+ case "$thislang" in
+ "afrikaans")
+ getespeakopts "af"
+ ;;
+ chinese-*)
+ getespeakopts "zh"
+ ;;
+ "czech")
+ getespeakopts "cs"
+ ;;
+ "deutsch")
+ getespeakopts "de"
+ ;;
+ "greek")
+ getespeakopts "el"
+ ;;
+ "english")
+ getespeakopts "en"
+ ;;
+ "esperanto")
+ getespeakopts "eo"
+ ;;
+ "espanol")
+ getespeakopts "es"
+ ;;
+ "finnish")
+ getespeakopts "fi"
+ ;;
+ "francais")
+ getespeakopts "fr"
+ ;;
+ "hindi")
+ getespeakopts "hi"
+ ;;
+ "islenska")
+ getespeakopts "is"
+ ;;
+ "italiano")
+ getespeakopts "it"
+ ;;
+ "nederlands")
+ getespeakopts "nl"
+ ;;
+ "norsk")
+ getespeakopts "no"
+ ;;
+ "polski")
+ getespeakopts "pl"
+ ;;
+ portugues*)
+ getespeakopts "pt"
+ ;;
+ "romaneste")
+ getespeakopts "ro"
+ ;;
+ "russian")
+ getespeakopts "ru"
+ ;;
+ "svenska")
+ getespeakopts "sv"
+ ;;
+ *)
+ ESPEAK_OPTS=""
+ ;;
+ esac
+ TTS_OPTS="${TTS_OPTS}${ESPEAK_OPTS}"
+ fi
+
# Allow the user to input manual commandline options
printf "Enter $TTS_ENGINE options (enter for defaults \"$TTS_OPTS\"): "
USER_TTS_OPTS=`input`