Didier Spaier, le dim. 10 mars 2019 11:23:31 +0100, a ecrit: > espeakup being started by a startup script like this: > ALSA_CARD=PCH espeakup -v fr-fr I guess you meant -V, not -v ? > Ctrl+Alt+F7 # Mate is started > Ctrl+Alt+F2 # log in as regular user > Now espeak-ng speaks with an English voice. So it's probably the restart of voice done by reinitialize_espeak which is erroneous. > This doesn't happen if espeakup is started like this: > ALSA_CARD=PCH espeakup -v fr I am actually surprised that it's that way, what I see would be the converse: reinitialize_espeak() uses espeak_SetVoiceByName (i.e. fr-fr only would work). > I have seen this commit: > https://github.com/williamh/espeakup/commit/ee099174d849e32bf7b555e458963d27f84c64b2 > "Allow a voice to be selected by language name" > but do not know if/why this could be related to that. Because it brings two ways of setting the voice: either by language or by name. I'd say synth_t's char *voice field should be replaced by a espeak_VOICE voice_select field, and make set_voice fill it before just always calling espeak_SetVoiceByProperties(), trying to use the "name" member before trying to use the "language" member. reinitialize_espeak() then just has to call espeak_SetVoiceByProperties on it instead of espeak_SetVoiceByName. Could you have a look at doing that? Samuel _______________________________________________ Speakup mailing list Speakup@xxxxxxxxxxxxxxxxx http://linux-speakup.org/cgi-bin/mailman/listinfo/speakup