Product: es-US
Version: 1.0.0
Release Date:
Introduction
This document describes how a specific series of strings are read by the TTS Engine for the Spanish language in the US domain. All the specifications and usage is valid for the es-US Sofía Female Voice Pack version 1.0.0.
And for the TTS Engine version 3.2.0.
Numbers
Integers
Integers less then 1000
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
[1-9][0-9] |
25 |
veinticinco |
|
[1-9][0-9] |
31 |
treinta y uno |
|
[1-9][0-9]…[0-9] |
159 |
ciento cincuenta y nueve |
|
<dash> [1-9]…[0-9] |
-58 |
menos cincuenta y ocho |
As with respect to the Spanish rules, "y" is used for to combine dozens and units.
Integers greater then 999
Allowed thousands delimiters
-
Comma
-
None
Space delimiter will result in two separate number groups.
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
[1-9][0-9]…[0-9][0-9] |
2824 |
dos mil ochocientos veinticuatro |
|
[1-9] <comma> [0-9] …[0-9][0-9] |
2,824 |
dos mil ochocientos veinticuatro |
|
[1-9][0-9][0-9] <comma> [1-9][0-9][0-9] <comma> [1-9][0-9][0-9] |
857,467,987 |
ochocientos cincuenta y siete millones cuatrocientos sesenta y siete mil novecientos ochenta y siete |
|
[1-9][0-9][0-9][1-9][0-9][0-9][1-9][0-9][0-9] |
857467987 |
ochocientos cincuenta y siete millones cuatrocientos sesenta y siete mil novecientos ochenta y siete |
|
<dash> [1-9][0-9][0-9]…[0-9] |
-12345 |
menos doce mil trescientos cuarenta y cinco |
|
<dash> [1-9][0-9][0-9] <comma> … <comma> [1-9][0-9][0-9] |
-12,345 |
menos doce mil trescientos cuarenta y cinco |
Maximum supported value is 999 billions. Numbers greater than this will be spelled number by number.
Ordinal numbers
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
[1-9]…[0-9]{er,ro,ra,do,da} |
1ro |
primero |
Decimals
Allowed decimal separator
-
dot
The individual numbers after the dot delimiter are spelled as single digits.
|
Format |
Example |
|
|
Input String |
Verbalized Form |
|
|
[1-9]…[0-9] <dot> [0-9][0-9]…[0-9] |
2.4527 |
dos punto cuatro cinco dos siete |
|
<dash> [1-9]…[0-9] <dot> [0-9][0-9]…[1-9] |
-25.78 |
menos veinticinco punto siete ocho |
Number groups
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
[0-9] <dash> … [0-9] <space> [0-9] <dash> … [0-9] <space> … |
4-2-1-4 2-3-4 7-5-3 |
cuatro dos uno cuatro, dos tres cuatro, siete cinco tres |
16-digit card numbers
Card numbers belong to the number groups. In order to pronounce the 16-digit card number in groups of four digits with a short pause in between them, the input number has to contain the dashes, e.g.:
"Para confirmar, usted dijo 5-8-9-7 4-2-6-5 1-2-3-4 7-4-6-8, correcto?"
Input text in the format of: "5896 4265 1234 7468 9726"
will result in: "cinco mil ochocientos noventa y seis, cuatro mil doscientos sesenta y cinco, …"
Telephone numbers
Telephone numbers should be composed as number groups also. The following example:
"Su número de teléfono es 3-8-7 8-5-6 9-3-0."
would be read as "tres ocho siete <short pause> ocho cinco seis <short pause> nueve tres cero".
Combination of numbers and words
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
{word} <dash> [0-9] … [0-9] |
COVID-19 |
covid diecinueve |
Beware of using spaces. When the dash sign is surrounded by space, it is verbalized as word "dash". For example, the verbalisation of "16 - digit" is "dieciséis guión numero".
Ratio
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
[0-9] … [0-9] <colon> [0-9] … [0-9] |
16:9 |
dieciséis a nueve |
Percentage
|
Format |
Example |
|
|
Input String |
Verbalized Form |
|
|
[1-9]…[0-9] <percent sign> |
15% |
quince por ciento |
Time
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
[00-99] <colon> [00-59] <colon> [00-59] |
12:11:01 |
doce horas diez minutos y un segundo |
|
[00-24] <colon> [00-59] |
23:15 |
veintitrés y quince |
|
[1-12] <space> {PM, AM} |
2 PM |
dos de la tarde |
|
[0-12] <colon> [0-59] <space> {PM, AM} |
02:20 PM |
dos y veinte de la tarde |
|
00:00 |
00:00 |
medianoche |
Time Intervals
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
[0-9] … [0-9] <dash> [1-9] … [0-9] <space> {days, hours, monts, minutes} |
3-5 días |
de tres a cinco días |
Date
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
[1-31] <space> {month} <space> [0-9][0-9][0-9][0-9] |
14 May 2022 |
catorce de mayo de dos mil veintidós |
|
[1-31] <space> {month} |
14 May |
catorce de mayo |
|
{month} <space> [1-31] <comma> <space> [1-9][0-9][0-9][0-9] |
June 6, 2020 |
seis de junio de dos mil veinte |
|
{month} <space> [1-31] |
June 6 |
seis de junio |
|
[00-31] <slash> [00-12] <slash> [1-9][0-9] |
31/12/19 |
treinta y uno de diciembre de diecinueve |
|
[00-12] <slash> [00-31] <slash> [1-9][0-9] |
12/31/22 |
treinta y uno de diciembre de veintydós |
|
[00-31] <slash> [00-12] <slash> [1-9][0-9][0-9][0-9] |
27-05-2021 |
veintisiete de mayo de dos mil veintiuno |
|
[00-31] <dot> [00-12] <dot> [1-9][0-9][0-9][0-9] |
27.05.2021 |
veintisiete de mayo de dos mil veintiuno |
|
[0-31] <dot> [0-12] <dot> [1-9][0-9][0-9][0-9] |
27.5.2021 |
veintisiete de mayo de dos mil veintiuno |
|
[1-9][0-9][0-9][0-9] <dash> [00-12] <dash> [00-31] |
2022-11-02 |
dos de noviembre de dos mil veintidós |
|
[00-31] <slash> [00-12] |
05/12 |
doce de mayo |
|
{month}<space> [1-31]{st,nd,rd,th} |
October 21st |
veintiuno de octubre |
Physical Units
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
{amount} {unit} |
2.5Gb |
dos punto cinco gigabits |
|
{amount} <space> {unit} |
3 m |
tres metros |
|
{amount} <space> {unit} <slash> {unit} |
1500 Mb/s |
mil quinientos megabits por segundo |
|
{amount} <space> {unit} <slash> {unit} |
1 kph |
un kilómetro por hora |
{unit}
|
Abbreviation |
Verbalization |
Abbreviation |
Verbalization |
|---|---|---|---|
|
mm |
milímetro(s) |
cm |
centímetro(s) |
|
m |
metro(s) |
km, Km |
kilómetro(s) |
|
m², m2 |
metro(s) cuadrado(s) |
m³, m3 |
metro(s) cúbico(s) |
|
“ |
pulgada(s) |
ft |
pie(s) |
|
kph |
kilómetro(s) por hora |
h, hr |
hora(s) |
|
min, mins |
minuto(s) |
s |
segundo(s) |
|
g, gm |
gramo(s) |
kg, Kg |
kilogramo(s) |
|
oz |
onza(s) |
lb,lbs |
libra(s) |
|
ml, mL |
mililitro(s) |
cl, cL |
centilitro(s) |
|
l, L |
litro(s) |
gal |
galón(s) |
|
Hz, hz |
hercio(s) |
kHz, KHz, khz |
kilohercio(s) |
|
MHz |
megahercio(s) |
GHz, Ghz, ghz |
gigahercio(s) |
|
mW |
milivatio(s) |
w, W |
watt(s) |
|
kW, KW |
kilovatio(s) |
MW |
megavatio(s) |
|
GW |
gigavatio(s) |
kwh, kWh, KWh |
kilovatio(s) horas(s) |
|
v, V |
voltio(s) |
mA |
miliamperio(s) |
|
A |
amperio(s) |
db,dB |
decibel(ios) |
|
kb, Kb, kbit |
kilobit(s) |
mb,Mb,Mbit |
megabit(s) |
|
gb, Gb, Gbit |
gigabit(s) |
tb, Tb, Tbit |
terabit(s) |
|
pb, Pb, Pbit |
petabit(s) |
bps |
bit(s) por segundo |
|
Kbps |
kilobit(s) por segundo |
Mbps |
megabit(s) por segundo |
|
Gbps |
gigabit(s) por segundo |
Tbps |
terabit(s) por segundo |
|
kB, KB |
kilobyte(s) |
MB |
megabyte(s) |
|
GB |
gigabyte(s) |
TB |
terabyte(s) |
|
PB |
petabyte(s) |
kBps, KBps |
kilobyte(s) por segundo |
|
MBps |
megabyte(s) por segundo |
GBps |
gigabyte(s) por segundo |
|
TBps |
terabyte(s) por segundo |
PBps |
petabyte(s) por segundo |
|
°C, °c |
grado(s) Celsius |
°F,°f |
grados(s) Fahrenheit |
Words
Abbreviations and Spelling
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
[A-Z] … [A-Z] |
ABC |
abc |
|
[A-Z] <dot> [A-Z] <dot> … [A-Z] <dot> |
a.c. |
antes de cristo |
|
[a-z] <dot> [a-z] <dot> … [a-z] <dot> |
ej. |
ejemplo |
|
{common abbreviation} |
dr. |
doctor |
|
<space> [A-Z] {<comma>, <dot>, <space>} |
A o B |
a o b |
Multi-word acronyms and all-caps words are no longer spelled out letter-by-letter; they are read as words (e.g., ABC is verbalized as “abc”). Single isolated capital letters are still spelled out.
Chained spelled-out letters are clearly separated. Capitalized abbreviations opening a sentence are handled correctly.
Replacement of the trailing comma of consecutive <letter>, como <word>, clauses with a period for all but the final clause in the sequence.
{common abbreviation}
|
Format |
Example |
Input String |
Verbalized Form |
|---|---|---|---|
|
prof. |
profesor |
sr. |
señor |
|
dr. |
doctor |
sra. |
señora |
|
ej. |
ejemplo |
srta. |
señorita |
|
etc. |
etcétera |
jr. |
júnior |
|
s.a. |
sociedad anónima |
cía. |
compañía |
Address abbreviations
English address abbreviations (US-style addresses read out in Spanish). Note: bare “ave” is deliberately NOT mapped, because “ave” is the Spanish word for “bird” and would collide with normal text; it is only expanded when the preceding token is a number (e.g. “5 Ave” → “5 avenue”).
A unit designator following an address abbreviation is read as part of the address.
|
Input String |
Verbalized Form |
|---|---|
|
apt. |
apartament |
|
apt |
apartament |
|
ste. |
suite |
|
ste |
suite |
|
bldg. |
building |
|
bldg |
building |
|
st. |
street |
|
st |
street |
|
ave. |
avenue |
|
blvd. |
boulevard |
|
blvd |
boulevard |
|
rd. |
road |
|
rd |
road |
|
ln. |
lane |
|
ln |
lane |
|
pkwy. |
parkway |
|
pkwy |
parkway |
Directional abbreviations
USPS-style directionals. These are only unambiguous when written in uppercase as used in real addresses (e.g. “…Ave NW”, “…St SE”). Lowercase “se” is the common Spanish reflexive/impersonal pronoun (“se fue”, “se dice”), so these are matched on exact (uppercase) case only and are NOT part of the case-insensitive abbreviations lexicon. Single letter directionals(N, W, E, S) are not expanded to avoid collisions with other spelling cases.
|
Input String |
Verbalized Form |
|---|---|
|
NW |
northwest |
|
NW. |
northwest |
|
NE |
northeast |
|
NE. |
northeast |
|
SW |
southwest |
|
SW. |
southwest |
|
SE |
southeast |
|
SE. |
southeast |
Dashed words
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
[a-Z] … [a-z] <dash> [a-Z] … [a-z] |
|
e mail |
|
[a-Z]…[a-z] <space> <dash> <space> [a-Z] … [a-z] |
Paris - Texas |
parís guión texas |
URLs and E-mails
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
(www) <punto> {word} <punto> {domain} |
www.google.com |
w w w punto google punto com |
|
(www) <punto> {word} <punto> {domain} <barra> {path} |
www.google.com/maps |
w w w punto google punto com barra maps |
|
{protocol} <dos puntos> <barra> <barra> {word} <punto> {domain} |
https://google.com |
h t t p s dos puntos doble barra google punto com |
|
{protocol} <dos puntos> <barra> <barra> {word} <punto> {domain} <barra> {word} <guión> {word} |
https://www.example.com/my-page |
h t t p s dos puntos doble barra w w w punto example punto com barra my guión page |
|
{protocol} <dos puntos> <barra> <barra> {word} <punto> {domain} <dos puntos> {port} <barra> {path} |
http://example.com:8080/path/to/resource |
h t t p dos puntos doble barra example punto com dos puntos ocho cero ocho cero barra path barra to barra resource |
|
{protocol} <dos puntos> <barra> <barra> {ip} <barra> {path} |
http://123.123.123.123/path/to/resource |
h t t p dos puntos doble barra ciento veintitrés punto ciento veintitrés punto ciento veintitrés punto ciento veintitrés barra path barra to barra resource |
|
{protocol} <dos puntos> <barra> <barra> {word} <punto> {domain} <barra> {path} <porcentaje> {encoded} |
http://example.com/path%20with%20spaces |
h t t p dos puntos doble barra example punto com barra path porcentaje dos cero with porcentaje dos cero spaces |
|
{protocol} <dos puntos> <barra> <barra> {word} <punto> {domain} <barra> {word} <signo igual> <signo de interrogación> {query} |
https://www.ocp.ai/input=?$ad |
h t t p s dos puntos doble barra w w w punto ocp punto ai barra input signo igual signo de interrogación signo de dólar ad |
|
ftp <dos puntos> <barra> <barra> ftp <punto> {word} <punto> {domain} <barra> {path} |
ftp://ftp.example.com/resource |
f t p dos puntos doble barra f t p punto example punto com barra resource |
|
{word} <arroba> {word} <punto> {domain} |
info@omilia.com |
i n f o arroba omilia punto com |
Note: In es-US, the following characters are verbalized in URLs and email addresses:
|
Carácter |
Verbalización |
|---|---|
|
. |
punto |
|
@ |
arroba |
|
/ |
barra |
|
- |
guión |
|
: |
dos puntos |
|
_ |
guión bajo |
|
= |
signo igual |
|
? |
signo de interrogación |
|
% |
porcentaje |
|
$ |
signo de dólar |
Currency
|
Format |
Example |
|
|---|---|---|
|
Input String |
Verbalized Form |
|
|
{currency symbol} {amount} |
$25.10 |
veinticinco dólares y diez centavos |
|
£25,000 |
veinticinco mil libras |
|
|
{amount} {currency symbol} |
25.10€ |
veinticinco euros y diez céntimos |
|
{amount} <space> {currency code} |
25 USD |
veinticinco dólares americanos |
|
{currency code} <space> {amount} |
GBP 25 |
veinticinto libras esterlinas |
|
{currency code} {amount} <space> {quantity} |
$1.3 millones |
uno punto tres millones de dólares. |
|
{amount} <space> {quantity} <space> {currency code} |
1 millón USD |
un millón de dólares americanos |
{currency code}
|
Code |
Verbalized form |
Subdivision |
|---|---|---|
|
USD |
dólar(es) americano(s) |
centavo(s) |
|
EUR |
euro(s) |
céntimo(s) |
|
GPB |
libra(s) esterlina(s) |
penique, peniques |
{currency symbol}
|
Symbol |
Verbalized form |
|---|---|
|
$ |
dolár(es) |
|
€ |
euro(s) |
|
£ |
libra(s) |
Amount examples
|
Amount |
Verbalized form |
|---|---|
|
$235,125,250.12 |
doscientos treinta y cinco millones ciento veinticinco mil doscientos cincuenta doláres y doce centavos |
|
$3.458 |
tres punto cuatro cinco ocho doláres |
|
$5,000.00 |
cinco mil doláres |
|
$0.01 |
un centavo |
{quantity}
|
millón |
|
billón |
|
trillón |
Punctuation and Characters Processing
Supported characters
|
Char |
Description |
Used as/in |
Char |
Description |
Used as/in |
|---|---|---|---|---|---|
|
. |
period |
sentence ending |
@ |
at sign |
email address |
|
decimal separator |
- |
dash |
number group |
||
|
, |
comma |
sentence break |
word group |
||
|
thousands separator |
minus sign |
||||
|
? |
question mark |
sentence ending |
+ |
plus sign |
math equation |
|
! |
exclamation mark |
sentence ending |
$ |
dollar sign |
part of currency |
|
' |
apostrophe |
contraction |
€ |
euro sign |
part of currency |
|
possessive noun |
£ |
pound sign |
part of currency |
||
|
% |
percent sign |
percentage value |
|
|
|
Other characters or punctuation will be removed and will not affect the voice.
Punctuation
If no punctuation is present in the input text, the period will be added automatically. There is no check of the sentence content or a type in order to distinguish the punctuation.
Thank you for using our service → Thank you for using our service.
What can I do for you → What can I do for you.
|
Char |
Description |
Effect |
|---|---|---|
|
. |
period |
falling intonation |
|
? |
question mark |
raising intonation |
|
|
space |
pause |
|
- |
dash |
short pause |
|
, |
comma |
falling intonation |
|
! |
exclamation mark |
increased intensity |
The question mark does not always result in rising intonation. It follows the question intonation rules of en-US referring to rising, falling and rise-fall intonation for yes/no, wh- or multiple choice questions.
SSML TAGS
<break/>
-
the pause in the given position is forced if this tag used