[1.44.13]

Speed increase.  Added the "sonic" routines by Bill Cox to reduce the length of eSpeak's sound output data, so as to make the speaking speed faster.

Ordinal numbers: Some languages (el,es) use the ordinal form of hundreds and tens part of a number, as well as the units part.  Added language option NUM2_MULTIPLE_ORDINAL.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@254 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
jonsd
2010-11-17 14:31:24 +00:00
parent 14e212f3a1
commit 1649824b33
44 changed files with 3659 additions and 1124 deletions
+16 -12
View File
@@ -140,6 +140,7 @@ void SetSpeed(int control)
int s1;
int wpm;
int wpm2;
double wpm_inc;
speed.loud_consonants = 0;
speed.min_sample_len = 450;
@@ -150,6 +151,21 @@ void SetSpeed(int control)
if(control == 2)
wpm = embedded_value[EMBED_S2];
// fast_settings[0] wpm where speedup starts
// fast_settings[1] wpm for maximum espeak speed
// fast_settings[2] maximum espeak speed
sonicSpeed = 1.0;
if(wpm > speed.fast_settings[0])
{
wpm2 = wpm;
wpm_inc = (double)(speed.fast_settings[2] - speed.fast_settings[0]) / (double)(speed.fast_settings[1] - speed.fast_settings[0]);
wpm_inc = (wpm2 - speed.fast_settings[0]) * wpm_inc;
wpm = speed.fast_settings[0] + (int)wpm_inc;
sonicSpeed = ((double)wpm2)/wpm;
}
#ifdef TEST_SPEED
if(wpm > 1000)
{
@@ -262,18 +278,6 @@ void SetSpeed(int control)
if((speed.clause_pause_factor = speed.pause_factor) < 16)
speed.clause_pause_factor = 16;
}
if(wpm >= 370)
{
// TESTING
// use experimental fast settings if they have been specified in the Voice
if(speed.fast_settings[0] > 0)
speed.pause_factor = speed.fast_settings[0];
if(speed.fast_settings[1] > 0)
speed.wav_factor = speed.fast_settings[1];
if(speed.fast_settings[2] > 0)
speed.lenmod_factor = speed.lenmod2_factor = speed.fast_settings[2];
}
}
#ifdef TEST_SPEED