|
|
@@ -79,6 +79,7 @@ static const char *help_text = |
|
|
|
"-x\t Write phoneme mnemonics to stdout\n" |
|
|
|
"-X\t Write phonemes mnemonics and translation trace to stdout\n" |
|
|
|
"-z\t No final sentence pause at the end of the text\n" |
|
|
|
"-D\t Enable deterministic random mode\n" |
|
|
|
"--compile=<voice name>\n" |
|
|
|
"\t Compile pronunciation rules and dictionary from the current\n" |
|
|
|
"\t directory. <voice name> specifies the language\n" |
|
|
@@ -353,6 +354,7 @@ int main(int argc, char **argv) |
|
|
|
int phoneme_options = 0; |
|
|
|
int option_linelength = 0; |
|
|
|
int option_waveout = 0; |
|
|
|
bool deterministic = 0; |
|
|
|
|
|
|
|
espeak_VOICE voice_select; |
|
|
|
char filename[200]; |
|
|
@@ -368,7 +370,7 @@ int main(int argc, char **argv) |
|
|
|
option_punctlist[0] = 0; |
|
|
|
|
|
|
|
while (true) { |
|
|
|
c = getopt_long(argc, argv, "a:b:d:f:g:hk:l:mp:qs:v:w:xXz", |
|
|
|
c = getopt_long(argc, argv, "a:b:Dd:f:g:hk:l:mp:qs:v:w:xXz", |
|
|
|
long_options, &option_index); |
|
|
|
|
|
|
|
// Detect the end of the options. |
|
|
@@ -388,6 +390,9 @@ int main(int argc, char **argv) |
|
|
|
case 'd': |
|
|
|
strncpy0(devicename, optarg2, sizeof(devicename)); |
|
|
|
break; |
|
|
|
case 'D': |
|
|
|
deterministic = 1; |
|
|
|
break; |
|
|
|
case 'h': |
|
|
|
printf("\n"); |
|
|
|
PrintVersion(); |
|
|
@@ -583,6 +588,11 @@ int main(int argc, char **argv) |
|
|
|
exit(1); |
|
|
|
} |
|
|
|
|
|
|
|
if (deterministic) { |
|
|
|
// Set random generator state to well-known |
|
|
|
espeak_ng_SetRandSeed(1); |
|
|
|
} |
|
|
|
|
|
|
|
if (option_waveout || quiet) { |
|
|
|
// writing to a file (or no output), we can use synchronous mode |
|
|
|
result = espeak_ng_InitializeOutput(ENOUTPUT_MODE_SYNCHRONOUS, 0, devicename[0] ? devicename : NULL); |