[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: espeak voicing and compile issue (patch)

"Lukas Loehrer" <listaddr1@gmx.net> writes:

> Espeak can natively use either portaudio or pulseaudio for sound
> playback. portaudio in turn can use either OSS or Alsa (only portaudio
> 19). I get better results using OSS via the aoss wrapper then when
> using alsa directly. 

For some reason, I was having problems compiling espeak using portaudio
19.  I did get it to compile with version 18.

> Also, I find the speech produced by the emacspeak server somewhat
> unpleasant because it is not fluent, i.e. there are pauses in the
> wrong places, especially when there are a lot of non-alpha-numeric
> characters, like in source code.

I either did not notice that issue or I've not used it enough with code
to notice.  I'll have to test that out later.

> On ubuntu hardy and Debian sid , I have to apply the patch attached
> to this mail message to be able to compile the espeak speech server.
> Otherwise, gcc will complain about some invalid conversions.

This touches on one of the issues I have.  I forgot that about one month
ago I had to do a new install of Debian.  (Don't ask... long story) Now
I'm running testing.  Anyway, after doing that I could not get the
espeak server to compile on a fresh svn directory.  I did have a working
espeak server in an old directory that I copied over and it worked.  I
should have thought of this and tried to compile a new one before
complaining but...

Part of my problem has to do with the Makefile, I think.  When running
Debian don't you have to edit the makefile to include the path to the
tcl8.x directory in the CFLAGS line?  I had to do that with the outloud
server.  As soon as I include the tcl directory the line about not being
able to find tcl.h goes away.  Then I get a bunch of warnings like this:

warning: deprecated conversion from string constant to 'char*'

and it ends with:

make: *** [tclespeak.lo] Error 1

Does your patch fix this?

Also, your patch was inline, not attached, as far as I can see.  Does it
begin where I have it below and if not, where?  Sorry, I'm not terribly
familiar with the format of diff files, and I saw nothing about the
--git option in the man page.

Thanks for your time and help,

--- begin here? ---
> diff --git a/servers/espeak b/servers/espeak
> old mode 100644
> new mode 100755
> diff --git a/servers/linux-espeak/tclespeak.cpp b/servers/linux-espeak/tclespeak.cpp
> index 52b4a17..6411c8d 100644
> --- a/servers/linux-espeak/tclespeak.cpp
> +++ b/servers/linux-espeak/tclespeak.cpp
> @@ -569,7 +569,7 @@ initLanguage (Tcl_Interp * interp)
>      {
>        char buffer_i[3];
>        snprintf(buffer_i, 3, "%d", i); 
> -      Tcl_SetVar2(interp, "langalias", voices[i]->languages, buffer_i, 0);
> +      Tcl_SetVar2(interp, "langalias", const_cast<char*>(voices[i]->languages), buffer_i, 0);
>      }
>    langInfoMax = i;
> @@ -593,7 +593,7 @@ initLanguage (Tcl_Interp * interp)
>  	  continue;
>  	}
> -      char* aLangCode = 1 + voices[i]->languages;
> +      char* aLangCode = 1 + const_cast<char*>(voices[i]->languages);
>        snprintf(buffer_i, 3, "%d", aLang); 
>        snprintf(buffer_j, 3, "%d", j++); 
> @@ -605,7 +605,7 @@ initLanguage (Tcl_Interp * interp)
>  	  Tcl_SetVar2(interp, "langcode", "current", aLangCode, 0);
>  	}
> -      Tcl_SetVar2(interp, "langlabel", buffer_j, voices[i]->name, 0);
> +      Tcl_SetVar2(interp, "langlabel", buffer_j, const_cast<char*>(voices[i]->name), 0);
>        Tcl_SetVar2(interp, "langcode", buffer_j, aLangCode, 0);
>        Tcl_SetVar2(interp, "langsynth", "top", buffer_j, 0);
>      }

Robert D. Crawford                                      rdc1x@comcast.net

Even more amazing was the realization that God has Internet access.  I
wonder if He has a full newsfeed?
		-- Matt Welsh

To unsubscribe from the emacspeak list or change your address on the
emacspeak list send mail to "emacspeak-request@cs.vassar.edu" with a
subject of "unsubscribe" or "help"

If you have questions about this archive or had problems using it, please send mail to:

priestdo@cs.vassar.edu No Soliciting!

Emacspeak List Archive | 2007 | 2006 | 2005 | 2004 | 2003 | 2002 | 2001 | 2000 | 1999 | 1998 | Pre 1998

Emacspeak Files | Emacspeak Blog