1
0
Fork 0
mirror of https://github.com/opentx/opentx.git synced 2025-07-23 00:05:17 +03:00

Numbers with digits (A1/A2) were not played correctly with TTS (done only french)

This commit is contained in:
bsongis 2012-07-24 20:53:01 +00:00
parent effdd542ca
commit a5112d2463
2 changed files with 14 additions and 4 deletions

View file

@ -49,6 +49,7 @@ enum FrenchPrompts {
PROMPT_SOIXANTE_ET_ONZE = 109, PROMPT_SOIXANTE_ET_ONZE = 109,
PROMPT_QUATRE_VINGT_UNE = 110, PROMPT_QUATRE_VINGT_UNE = 110,
PROMPT_VIRGULE = 116,
PROMPT_ET = 117, PROMPT_ET = 117,
PROMPT_MOINS = 118, PROMPT_MOINS = 118,
@ -115,6 +116,15 @@ void playNumber(int16_t number, uint8_t unit, uint8_t att)
prompts.append(Prompt(GUIDE_00_MILLION, dir=2)) prompts.append(Prompt(GUIDE_00_MILLION, dir=2))
*/ */
int8_t mode = MODE(att);
if (mode > 0) {
div_t qr = div(number, (mode == 1 ? 10 : 100));
playNumber(qr.quot);
pushPrompt(PROMPT_VIRGULE);
playNumber(qr.rem, unit);
return;
}
if (number < 0) { if (number < 0) {
pushPrompt(PROMPT_MOINS); pushPrompt(PROMPT_MOINS);
number = -number; number = -number;

View file

@ -35,8 +35,6 @@ def generate(str, idx):
else: else:
result = idx + ".wav" result = idx + ".wav"
temp = "_" + result temp = "_" + result
print result, str
if "sapi" in sys.argv: if "sapi" in sys.argv:
tts.SpeakToWave(temp, str) tts.SpeakToWave(temp, str)
@ -73,6 +71,8 @@ def generate(str, idx):
subprocess.Popen(["ffmpeg", "-y", "-i", temp, "-acodec", "pcm_alaw", "-ar", "16000", result], stdout=subprocess.PIPE, stderr=subprocess.PIPE).wait() subprocess.Popen(["ffmpeg", "-y", "-i", temp, "-acodec", "pcm_alaw", "-ar", "16000", result], stdout=subprocess.PIPE, stderr=subprocess.PIPE).wait()
os.remove(temp) os.remove(temp)
print result, str
if result: if result:
return [(result, str)] return [(result, str)]
else: else:
@ -174,8 +174,8 @@ if __name__ == "__main__":
systemSounds.extend(generate("1000", 101)) systemSounds.extend(generate("1000", 101))
for i, s in enumerate(["une", "onze", "vingt et une", "trente et une", "quarante et une", "cinquante et une", "soixante et une", "soixante et onze", "quatre vingt une"]): for i, s in enumerate(["une", "onze", "vingt et une", "trente et une", "quarante et une", "cinquante et une", "soixante et une", "soixante et onze", "quatre vingt une"]):
systemSounds.extend(generate(s, 102+i)) systemSounds.extend(generate(s, 102+i))
for i, s in enumerate(["et", "moins"]): for i, s in enumerate(["virgule", "et", "moins"]):
systemSounds.extend(generate(s, 117+i)) systemSounds.extend(generate(s, 116+i))
for i, s in enumerate(["timer", "", "tension", "tension", u"émission", u"réception", "altitude", "moteur", for i, s in enumerate(["timer", "", "tension", "tension", u"émission", u"réception", "altitude", "moteur",
"essence", u"température", u"température", "vitesse", "distance", "altitude", u"élément lipo", "essence", u"température", u"température", "vitesse", "distance", "altitude", u"élément lipo",
"total lipo", "tension", "courant", "consommation", "puissance", u"accelération X", u"accelération Y", u"accelération Z", "total lipo", "tension", "courant", "consommation", "puissance", u"accelération X", u"accelération Y", u"accelération Z",