You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Take any natural numeric prefix such as 1, 2, 3, 4.
Prepend this with either st, nd, rd, or th.
Notice how when the wrong number is put with the ordinal number suffix, Espeak speaks the number as if it were an ordinal number.
Examples.
legend:
yes
/ no
ordinal prefix
ordinal suffix
ordinal combination
speech
correct? * or /
1
st
1st
first
*
2
st
2st
secst
/
3
st
3st
thirst
/
4
st
4st
fourst
/
1
nd
1nd
firrnd
/
2
nd
2nd
second
*
3
nd
3nd
thirrnd
/
4
nd
4nd
fourrnd
/
1
rd
1rd
fird
/
2
rd
2rd
secd
/
3
rd
3rd
third
*
4
rd
4rd
fourd
/
1
th
1th
firth
/
2
th
2th
secth
/
3
th
3th
thirth
/
4
th
4th
fourth
*
reason.
I haven't dug into the code rules, but I suspect that espeak is concatinating things like thi with rd to make third and thi with st to make thirst or something.
The text was updated successfully, but these errors were encountered:
In general, this is "garbage in, garbage out" problem.
Derekriemer, if you have some suggestions, what espeak-ng should say in the wrong cases, I could evaluate, some reasonable workarounds for these cases.
This is due to the way espeak handles ordinals. It splits them into the number and (st|nd|rd|th) part. That is, the 1 in 1st is pronounced as fir. The way I would like to implement this in espeak-ng is to use the words for the ordinals. That is, 1st should map to the word first, not f'3:st.
The motivation behind this is to make it easier to support accent variations and to be consistent across the numeric version and the version using words (e.g. 14 and fourteen).
The question is how to handle things like 3st. My thinking is to use:
Word
Pronunciation
3rd
third
3st
three s t
3 st
three stone
with the last one being handled by the $units marker proposed in issue #115.
Examples.
legend:
/ no
reason.
I haven't dug into the code rules, but I suspect that espeak is concatinating things like thi with rd to make third and thi with st to make thirst or something.
The text was updated successfully, but these errors were encountered: