Bug#614386: Fwd: Bug#614386: [espeak] mbrola voice path incorrect
tags 614386 + upstream patch
thanks
Hello,
There is an mbrola path issue: I can see that espeak
looks for mbrola voices in /usr/share/mbrola/<voice> and
/usr/share/mbrola/voices/<voice>, while the Debian/Ubuntu packages
provide them in /usr/share/mbrola/<voice>/<voice>, since that is where
speech-dispatcher looks for it. Could you add apply the attached patch
to also look in /usr/share/mbrola/<voice>/<voice> too?
Thanks,
Samuel
----- Forwarded message from Maurizio Avogadro <mavoga@gmail.com> -----
From: Maurizio Avogadro <mavoga@gmail.com>
To: submit@bugs.debian.org
Subject: Bug#614386: [espeak] mbrola voice path incorrect
Reply-To: Maurizio Avogadro <mavoga@gmail.com>, 614386@bugs.debian.org
Date: Mon, 21 Feb 2011 17:14:29 +0100
Package: espeak
Version: 1.44.05-1
Severity: normal
--- Please enter the report below this line. ---
espeak calls mbrola with wrong voice path:
$ echo "vediamo come funziona mbrola" | espeak -v mb-it3 | mbrola -e
/usr/share/mbrola/it3/it3 - -.au | sox - -t alsa
mbrola: FATAL ERROR : cannot find file /usr/share/mbrola/voices/it3 !
mbrowrap error: mbrola exited with status 216
mbrola voice not found
sox FAIL formats: can't open input `-': premature EOF
This didn't happen with Squeeze version (1.43.03-2).
Thanks
Maurizio
--- ./src/synth_mbrola.cpp.original 2011-02-21 17:46:32.000000000 +0100
+++ ./src/synth_mbrola.cpp 2011-02-21 17:46:59.000000000 +0100
@@ -141,6 +141,11 @@
if(GetFileLength(path) <= 0)
{
// mbrola voice file not found, look in /usr/share
+ sprintf(path,"/usr/share/mbrola/%s/%s",mbrola_voice,mbrola_voice);
+ }
+ if(GetFileLength(path) <= 0)
+ {
+ // mbrola voice file not found, look in /usr/share
sprintf(path,"/usr/share/mbrola/voices/%s",mbrola_voice);
}
#endif
Reply to: