mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-10-31 05:35:35 +00:00
[1.31.12]
Fix: reset phoneme table if speech is cancelled while switched to a second language. "speak": add -z options (same as for "espeak"). Numbers: Add option to speak "and" before hundreds. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@143 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
@@ -72,10 +72,10 @@ aU@ E e@ eI I I2 i: i@
|
||||
i@3 IR O O: o: O@ o@ OI
|
||||
oU O~ U u: U@ V VR
|
||||
|
||||
: ; b C d D dZ f
|
||||
g h j k l m n N
|
||||
p Q r r- s S t T
|
||||
t2 tS v w x z Z
|
||||
; b C d D dZ f g
|
||||
h j k l m n N p
|
||||
Q r r- s S t T t2
|
||||
tS v w x z Z
|
||||
|
||||
|
||||
Dictionary eo_dict
|
||||
@@ -111,9 +111,9 @@ S s2 t v Z
|
||||
|
||||
Dictionary fr_dict
|
||||
|
||||
@ @- a A A~ e E E:
|
||||
E~ i i: o O O~ u W
|
||||
w^i W~ y Y
|
||||
@ @- a A A~ e E E~
|
||||
i i: o O O~ u W w^i
|
||||
W~ y Y
|
||||
|
||||
* : ; b c d D dZ
|
||||
f g h j k l L m
|
||||
@@ -401,3 +401,14 @@ u# W y Y
|
||||
j k l m n p Q r
|
||||
R s S t tS v w z
|
||||
Z
|
||||
|
||||
|
||||
Dictionary ku_dict
|
||||
|
||||
a e E eI i I o u
|
||||
U y
|
||||
|
||||
: b d dZ f g h j
|
||||
k l m n p q r R
|
||||
s S t tS v w x z
|
||||
Z
|
||||
|
||||
+2
-3
@@ -67,7 +67,7 @@ _& amp@sand
|
||||
_' praIm
|
||||
_( ElbrakIt
|
||||
_) A@brakIt
|
||||
_* ast@rIsk:
|
||||
_* ast@rIsk
|
||||
_+ plVs
|
||||
_, k0m@
|
||||
_- h,aIf@n
|
||||
@@ -313,7 +313,7 @@ ague eIgju:
|
||||
aha a2hA:
|
||||
ahem a2h'@m
|
||||
ahoy a2hOI
|
||||
airbus e@:bVs
|
||||
airbus e@bVs
|
||||
airpower 'e@p,aU@
|
||||
aisle aI@l
|
||||
ajar a2dZA@
|
||||
@@ -2218,7 +2218,6 @@ Emma Em@
|
||||
Evan Ev@n
|
||||
Gary garI2
|
||||
Geraint gEraInt
|
||||
Gilbert gIlb3t
|
||||
Giles gaIlz
|
||||
Glynn glIn
|
||||
Graeme greI@m
|
||||
|
||||
@@ -2372,6 +2372,7 @@
|
||||
g (i dZ
|
||||
gi (_ gI2
|
||||
_) g (il g
|
||||
g (ilC g
|
||||
l) ging dZI2N
|
||||
g (y dZ
|
||||
_) g (n
|
||||
|
||||
+73
-73
@@ -5,7 +5,7 @@
|
||||
|
||||
// 2006-11-18 Gilles Casse <gcasse@oralux.org>
|
||||
//
|
||||
// Updated 2008-02-11 Michel Such <michel.such@free.fr>
|
||||
// Updated 2008-02-14 Michel Such <michel.such@free.fr>
|
||||
//
|
||||
// * Numbers, a few abbreviations and exceptions.
|
||||
//
|
||||
@@ -421,7 +421,6 @@ adéquat adekuat2
|
||||
adéquate adekuat
|
||||
airbus Erbys
|
||||
anus anys
|
||||
any Eni
|
||||
ardent aRdA~
|
||||
bissus bisys
|
||||
bonus bonys
|
||||
@@ -433,20 +432,18 @@ choeur k@r
|
||||
cocus coky
|
||||
discident disidA~
|
||||
estomac Estoma
|
||||
eye aj
|
||||
eyes ajz
|
||||
fils fis
|
||||
imprudent E~pRydA~
|
||||
iris iris
|
||||
juin ZyE~
|
||||
malus malys
|
||||
many mEni
|
||||
mars maRs
|
||||
minus minys
|
||||
occident OksidA~
|
||||
orient ORjA~
|
||||
pays pEi
|
||||
phallus falys
|
||||
polder pOldEr
|
||||
prudent pRydA~
|
||||
secret sYkRE
|
||||
souris suri
|
||||
@@ -475,13 +472,13 @@ processus pROsEsys
|
||||
août ut
|
||||
azimut azim'yt
|
||||
brut bR'yt
|
||||
bouse buz
|
||||
but by $verb
|
||||
but byt
|
||||
club kl@b
|
||||
(le pub) l@||p'@b
|
||||
(un pub) W~||p'@b
|
||||
(du pub) dy||p'@b
|
||||
connecticut kOnEktikyt
|
||||
cut cWt
|
||||
helmut Elmut
|
||||
hub _|@b
|
||||
@@ -499,19 +496,15 @@ zut zyt
|
||||
|
||||
// et (t is said)
|
||||
|
||||
bridget bRidZEt
|
||||
exocet EgzOsEt
|
||||
fret fR'Et
|
||||
gadget gadZEt
|
||||
budget bydZE
|
||||
hamlet amlEt
|
||||
jacket ZakEt
|
||||
knesset knEsEt
|
||||
lazaret lazaREt
|
||||
margaret maRgaREt
|
||||
net nEt
|
||||
offset OfsEt
|
||||
pickpocket pikpOkEt
|
||||
racket RakEt
|
||||
set sEt
|
||||
soviet sOvjEt
|
||||
|
||||
@@ -525,7 +518,6 @@ yogourt yoguRt
|
||||
short SORt
|
||||
|
||||
// art (t said)
|
||||
stewart stiwaRt
|
||||
steward stiwaRt
|
||||
stuttgart StutgaRt
|
||||
hart aRt
|
||||
@@ -539,95 +531,103 @@ flirt fl@Rt
|
||||
|
||||
|
||||
// words from other languages
|
||||
about @bawt
|
||||
about _^_en
|
||||
acer asEr
|
||||
again _^_en
|
||||
against _^_en
|
||||
alone _^_en
|
||||
also _^_en
|
||||
and _^_en
|
||||
amazon amaz'On
|
||||
(audible manager) od'ibl||manadZ'@r
|
||||
be bi
|
||||
being biiN
|
||||
by baj
|
||||
any Eni
|
||||
apple _^_en
|
||||
at _^_en
|
||||
(audible manager) odibl||manadZ@r
|
||||
be _^_en
|
||||
being _^_en
|
||||
bluetooth blut'us
|
||||
byte bajt
|
||||
bytes bajts
|
||||
both _^_en
|
||||
browser _^_en
|
||||
can _^_en
|
||||
computer _^_en
|
||||
(cyber link) sibEr||link
|
||||
debian dEbjAn
|
||||
driver drajv@rz2
|
||||
download dOnlod
|
||||
does _^_en
|
||||
doesn't _^_en
|
||||
don't _^_en
|
||||
driver _^_en
|
||||
edit edit
|
||||
emacs Emaks
|
||||
emacspeak Emakspi:k
|
||||
end _^_en
|
||||
enter 'Ent@r
|
||||
epson EpsOn
|
||||
espeak @spi:k
|
||||
ethernet etERnEt
|
||||
exit egzit
|
||||
(file zilla) fajl@-||zija
|
||||
eye _^_en
|
||||
eyes _^_en
|
||||
(file zilla) fajl||zija
|
||||
fire _^_en
|
||||
firefox faj@RfOks
|
||||
(fire wire) faj@R||wajr
|
||||
firewire faj@Rwajr
|
||||
google gu:g'@l
|
||||
girl g@Rl
|
||||
get _^_en
|
||||
google gu:g@l
|
||||
gnome gnom
|
||||
gnu gnu
|
||||
hamburger _!A~b@rg@r
|
||||
has _!az $u
|
||||
his _!iz $u
|
||||
inside insajd
|
||||
insight insajt
|
||||
help _^_en
|
||||
in _^_en
|
||||
into _^_en
|
||||
inside _^_en
|
||||
insight _^_en
|
||||
internet E~tERnEt
|
||||
(internet explorer) E~tErn'Et||EksplOr'@r
|
||||
is iz
|
||||
it it
|
||||
its its
|
||||
is _^_en
|
||||
it _^_en
|
||||
its _^_en
|
||||
klaxon klaksOn
|
||||
leader li:d@R
|
||||
let lEt
|
||||
layer _^_en
|
||||
let _^_en
|
||||
liszt list
|
||||
lite lajt
|
||||
lite _^_en
|
||||
logon _^_en
|
||||
(mac os x) makoEsiks
|
||||
mail mE:jl
|
||||
maker mE:jk@r
|
||||
made _^_en
|
||||
mail _^_en
|
||||
media medja
|
||||
messenger mesEnZ'@r
|
||||
movy mu:v'i
|
||||
my maj
|
||||
name nejm
|
||||
not nOt
|
||||
messenger _^_en
|
||||
my _^_en
|
||||
name _^_en
|
||||
not _^_en
|
||||
of _^_en
|
||||
often _^_en
|
||||
ok oke
|
||||
open Op'@n
|
||||
outlook autluk
|
||||
outside autsajd
|
||||
outsider autsajd@r
|
||||
player plEj'@r
|
||||
quick kwik
|
||||
outside _^_en
|
||||
outsider _^_en
|
||||
player _^_en
|
||||
redhat REdat
|
||||
release rili:z
|
||||
same sejm
|
||||
same _^_en
|
||||
sametime _^_en
|
||||
schubert SubER
|
||||
screamer skri:m@r
|
||||
(search & destroy) s@:rS_||end_||dEsstrOj
|
||||
skype sk'ajp@-
|
||||
spybot spajbOt
|
||||
sun s@n
|
||||
sunlight s@nlajt
|
||||
since _^_en
|
||||
sun _^_en
|
||||
(text aloud) tEkst||@lawd
|
||||
than Dan
|
||||
the D@ $u
|
||||
them DEm $u
|
||||
then DEn $u
|
||||
there DEr $u
|
||||
they DE $u
|
||||
thunderbird f@ndERb@Rd
|
||||
time tajm
|
||||
timer tajm@r
|
||||
their _^_en
|
||||
there _^_en
|
||||
these _^_en
|
||||
those _^_en
|
||||
they _^_en
|
||||
thus _^_en
|
||||
thunderbird D'@ndYR||b@Rd
|
||||
time _^_en
|
||||
timer _^_en
|
||||
ubuntu ubuntu
|
||||
update @pd'E:jt
|
||||
upload @plod
|
||||
very vEri
|
||||
viavoice viavOjs
|
||||
was waz $u
|
||||
window windo
|
||||
windows windoz
|
||||
word wWRd
|
||||
writer rajt@r
|
||||
up _^_en
|
||||
viking vikiN
|
||||
was _^_en
|
||||
won't _^_en
|
||||
yacht jot
|
||||
yes jEs $brk
|
||||
|
||||
|
||||
+213
-53
@@ -1,12 +1,13 @@
|
||||
// French translation rules
|
||||
|
||||
// This file is UTF-8 encoded
|
||||
|
||||
// 2006-11-18 Gilles Casse <gcasse@oralux.org>
|
||||
//
|
||||
// Updated: 2008-02-11 Michel Such <michel.such@free.fr>
|
||||
// Updated: 2008-02-14 Michel Such <michel.such@free.fr>
|
||||
//
|
||||
// * The rules are based on Cicero TTS.
|
||||
//
|
||||
// Y
|
||||
|
||||
// Letter classes:
|
||||
// A all vowels: a e i o u y â ä é ê è î ï ô ö ù û
|
||||
@@ -28,8 +29,6 @@
|
||||
a (il_ a
|
||||
aie (me E // paiement
|
||||
ai E // aile
|
||||
a (lk O // talk
|
||||
a (ll_ O // football handball
|
||||
am (b A~ // jambon
|
||||
am (p A~ // camp
|
||||
am (m a // programmation
|
||||
@@ -50,12 +49,32 @@
|
||||
ay Ej // paye
|
||||
a a // bateau
|
||||
|
||||
// group a: English section
|
||||
_C) ad (_ _^_en // bad, had, sad
|
||||
alk _^_en // talk, walk
|
||||
all (_ _^_en // football handball
|
||||
f) all (en_ _^_en // fallen
|
||||
sm) all _^_en // small, smaller
|
||||
ally (_ _^_en // really, naturally
|
||||
a (wC _^_en
|
||||
|
||||
|
||||
.group b
|
||||
bb b // abbé
|
||||
om) b (_ // plomb applomb
|
||||
b b // aube
|
||||
|
||||
// group b: English section
|
||||
bird _^_en // bird
|
||||
bly (_ _^_en // probably
|
||||
board _^_en // board, keyboard
|
||||
box (_ _^_en // box, inbox, outbox
|
||||
bug (_ _^_en // bug, debug
|
||||
bug (g _^_en // debugger
|
||||
buil _^_en // build, built
|
||||
_) buy _^_en
|
||||
_) by _^_en // by, bye, bypass
|
||||
|
||||
|
||||
.group c
|
||||
c' s // s
|
||||
@@ -98,6 +117,12 @@
|
||||
cien (t_ i // ils appr�ient, remercient.
|
||||
i) cien (t_ sjA~ // coefficient
|
||||
|
||||
// group c: English section
|
||||
cast (_ _^_en // broadcast
|
||||
calt (_ _^_en // difficult
|
||||
cut (_ _^_en // cut, shortcut
|
||||
cy (_ _^_en // currency, frequency
|
||||
|
||||
|
||||
.group d
|
||||
dd d // addition
|
||||
@@ -108,8 +133,6 @@
|
||||
Csan) d (_ d
|
||||
_tan) d (_ d // stand
|
||||
Ctan) d (_ d
|
||||
for) d (_ d
|
||||
lor) d (_ d
|
||||
|
||||
Can) d (_ t2 // grand ami, grand marchand
|
||||
Cen) d (_ t2
|
||||
@@ -124,29 +147,25 @@
|
||||
r) d (_ // lourd placard
|
||||
d d // don bled
|
||||
|
||||
// group d: English section
|
||||
') d (_ _^_en
|
||||
lor) d (_ _^_en
|
||||
day (_ _^_en
|
||||
dle (X _^_en // bundle, handle
|
||||
dly (_ _^_en
|
||||
dy (_ _^_en
|
||||
|
||||
|
||||
.group e
|
||||
e (Ce_ E
|
||||
eau o // bateau cheveaux
|
||||
C) ea (d i: // read
|
||||
Cr) ea (m i: // stream
|
||||
Cl) ea (n i: // clean
|
||||
C) ea (Cer i: // reader, cleaner
|
||||
g) ea (s_ a // mangeas
|
||||
j) e (a // Jean Jeanne
|
||||
sp) ea (k i: // speak speaker
|
||||
p) ect (_ E // suspect
|
||||
ect (_ Ekt // direct
|
||||
_trépi) ed e
|
||||
_pi) ed e // pied
|
||||
ee i: // meeting
|
||||
_cl) ef (_ e // clef
|
||||
Ck) e (r_ @ // worker, talker
|
||||
_Cett) e (r_ @ // letter, better
|
||||
eaC) e (r_ @ // speaker, streamer
|
||||
gh) e (r_ @ // higher
|
||||
ght) e (r_ @ // fighter, lighter
|
||||
ooC) e (r_ @ // scooter
|
||||
_ov) e (r @ // over
|
||||
ein (C E~ // peindre
|
||||
ein (_ E~
|
||||
e (il E // vieille
|
||||
@@ -244,10 +263,6 @@
|
||||
_trav) er (_ ER
|
||||
_ti) er (_ ER
|
||||
|
||||
th) er (_ @R // brother
|
||||
th) er (s_ @R
|
||||
w) er (_ @R // power
|
||||
w) er (s_ @R
|
||||
|
||||
er (_ e // parler léger
|
||||
er (s_ e
|
||||
@@ -283,6 +298,7 @@
|
||||
|
||||
@Cr) es (_C @-
|
||||
rC) es (_C @- // fortes dames
|
||||
dg) et (_ Et // Bridget, gadget
|
||||
|
||||
') eu (_ y // eu
|
||||
eu (r_ @ // peur
|
||||
@@ -301,12 +317,6 @@
|
||||
_) eû y // eût
|
||||
eû Y // jeûne
|
||||
|
||||
ew (_ ju // new
|
||||
ews juz // news, newsreader
|
||||
r) ew (_ u // crew
|
||||
r) ews uz
|
||||
i) ew (_ u // view
|
||||
i) ews uz
|
||||
e (x E // exact
|
||||
ey (_ e // dahomey
|
||||
ey (C e // ceylan
|
||||
@@ -367,6 +377,33 @@
|
||||
|
||||
e @ // menue
|
||||
|
||||
// group e: English section
|
||||
C) ead _^_en // read, head
|
||||
eaf _^_en // leaf
|
||||
eak _^_en // break, speak
|
||||
Cr) eam _^_en // stream
|
||||
Cl) ean _^_en // clean
|
||||
l) ean _^_en // lean
|
||||
m) ean _^_en // mean
|
||||
ear _^_en // ear, search
|
||||
eas _^_en // please
|
||||
eat _^_en // eat, seat
|
||||
ed (_ _^_en
|
||||
ee _^_en // meeting
|
||||
eave _^_en // leave
|
||||
eft (_ _^_en // left
|
||||
eive _^_en // receive
|
||||
eith _^_en // either neither
|
||||
ely (_ _^_en // lately
|
||||
ooC) er (_ _^_en // scooter
|
||||
_ov) er _^_en // over
|
||||
_C) etter (_ _^_en // letter, better
|
||||
ack) et (_ _^_en // racket, packet
|
||||
ock) et (_ _^_en // rocket, pocket
|
||||
ery (_ _^_en // query
|
||||
qu) est (_ _^_en // request
|
||||
qu) este (X_ _^_en // requested, requester
|
||||
|
||||
|
||||
.group ë
|
||||
u) ë // ambiguë
|
||||
@@ -379,6 +416,17 @@
|
||||
_neu) f (_ans v // liaison: neuf ans
|
||||
_neu) f (_heures v
|
||||
|
||||
// group f: English section
|
||||
fail (_ _^_en // fail
|
||||
fail (A _^_en // failure
|
||||
faith _^_en // failure
|
||||
fly _^_en
|
||||
ford (_ _^_en
|
||||
friend _^_en // friend, friendly
|
||||
full (_ _^_en
|
||||
fully (_ _^_en
|
||||
fy (_ _^_en
|
||||
|
||||
|
||||
.group g
|
||||
g g
|
||||
@@ -421,6 +469,13 @@
|
||||
g (_ g // grog gag goulag
|
||||
g Z // congé george
|
||||
|
||||
// group g: English section
|
||||
gh _^_en // high, higher
|
||||
girl _^_en // girl
|
||||
gly (_ _^_en
|
||||
give (X _^_en
|
||||
gy (_ _^_en
|
||||
|
||||
|
||||
.group h
|
||||
_) h (ac _! // hache
|
||||
@@ -467,7 +522,6 @@ _) h (ic _! // hic
|
||||
_) h (ide _! // hideux
|
||||
_) h (iér _! // hiéroglyphe
|
||||
_) h (i-fi _! // hi-fi
|
||||
_) h (igh _! // highlandais
|
||||
_) h (i-han _! // hi-han
|
||||
_) h (iss _! // hisser
|
||||
_) h (it _! // hit, hit-parad
|
||||
@@ -503,6 +557,11 @@ _) h (umi // humide
|
||||
_) h (umo // humour
|
||||
h // ahuri
|
||||
|
||||
// group h: English section
|
||||
_) half _^_en
|
||||
_) h (As_ _^_en // has, his
|
||||
here (_ _^_en // here
|
||||
|
||||
|
||||
.group i
|
||||
i i // cri
|
||||
@@ -511,9 +570,6 @@ _) h (umo // humour
|
||||
i (es_ i // parties
|
||||
i (e_ i
|
||||
i (A j // fermier portier patio renier
|
||||
ig (h aj // right, fight, light
|
||||
wh) ile ajll // while, endwhile
|
||||
wr) i (tA aj // write
|
||||
_) ill ill // illégal
|
||||
_m) ill il // mille
|
||||
v) ill il // village
|
||||
@@ -527,18 +583,26 @@ _) h (umo // humour
|
||||
imm imm // immaculé
|
||||
im (_ im // karim
|
||||
im (C E~ // timbre
|
||||
ing (_ iN // parking
|
||||
in (h in // inhumain
|
||||
inct (_ E~ // distinct
|
||||
ind (_ ajnd // find, mind
|
||||
ind (ing_ ajnd // find, mind
|
||||
ink ink // link, pink
|
||||
in (n i // innombrable
|
||||
in (C E~ // vingt
|
||||
// in (_ E~ // vin
|
||||
in (_ W~ // vin
|
||||
ique (_ ik
|
||||
|
||||
// group i: English section
|
||||
ike (X _^_en // bike, like
|
||||
ill (_ _^_en // ill, will, fill
|
||||
C) illy (_ _^_en // silly
|
||||
ing (_ _^_en // parking
|
||||
ind (_ _^_en // find, mind
|
||||
ind (er_ _^_en // finder, reminder
|
||||
ink _^_en // link, pink
|
||||
ious (_ _^_en // various
|
||||
iously (_ _^_en // previously
|
||||
ism (_ _^_en // tourism
|
||||
ize _^_en // realize
|
||||
|
||||
|
||||
.group î
|
||||
î i // abîme
|
||||
@@ -560,10 +624,12 @@ _) h (umo // humour
|
||||
|
||||
.group k
|
||||
k k // kafka
|
||||
ket (_ kEt // basket
|
||||
kets (_ kEt // basket
|
||||
|
||||
|
||||
// group k: English section
|
||||
ke (X _^_en // basket, make, take
|
||||
ky (_ _^_en
|
||||
|
||||
.group l
|
||||
l l // lit
|
||||
ll l // aller
|
||||
@@ -572,11 +638,22 @@ _) h (umo // humour
|
||||
outi) l (_ // outil
|
||||
ui) ll j // juillet
|
||||
|
||||
// group l: English section
|
||||
') ld (_ _^_en
|
||||
') ll (_ _^_en
|
||||
less (_ _^_en // noiseless
|
||||
lessly (_ _^_en // endlessly
|
||||
|
||||
|
||||
.group m
|
||||
m m // film
|
||||
mm m // pomme
|
||||
|
||||
// group m: English section
|
||||
mail (A _^_en // mailer
|
||||
may _^_en
|
||||
mov (A _^_en // move, movy
|
||||
|
||||
|
||||
.group n
|
||||
n n // une
|
||||
@@ -588,6 +665,10 @@ _) h (umo // humour
|
||||
A) ng (_ N // parking meeting
|
||||
nn n // panne
|
||||
|
||||
// group n: English section
|
||||
n't (_ _^_en
|
||||
ny (_ _^_en
|
||||
|
||||
|
||||
.group o
|
||||
cr) oc (_ o // escroc
|
||||
@@ -635,11 +716,8 @@ p) oing (_ wE~ // poing
|
||||
r) o (ne_ o
|
||||
|
||||
alc) oo (l O // alcool
|
||||
oo (Ce u // boomer
|
||||
C) oot ut // bootable football
|
||||
z) oo o // zoo
|
||||
z) oo (l oo // zoologue
|
||||
z) oo (ph oo // zoophile
|
||||
z) oo (C oo // zoologue
|
||||
z) oo (m u // zoom
|
||||
oo (X u // pool
|
||||
_gal) op (_ o // galop
|
||||
@@ -650,7 +728,6 @@ p) oing (_ wE~ // poing
|
||||
v) ost (_ o // Prévost
|
||||
o (sA o // poser
|
||||
ot (_ o // mot dépots
|
||||
C) ou (nd aw // sound, found
|
||||
_C) oup (_ u // coup, loup
|
||||
uC) oup (_ up2 // beaucoup
|
||||
|
||||
@@ -660,8 +737,6 @@ p) oing (_ wE~ // poing
|
||||
oû u // coûter
|
||||
oyes (_ wa // troyes
|
||||
oy (A waj // noyer voyelles
|
||||
oy (_ Oj // boy, toy
|
||||
oys (_ Ojz // boys, toys
|
||||
oy wa // roy
|
||||
o (_ o // zorro allégro
|
||||
o (z_ o // berlioz
|
||||
@@ -672,6 +747,20 @@ p) oing (_ wE~ // poing
|
||||
|
||||
o O // sobre notions émotions
|
||||
|
||||
// group o: English section
|
||||
C) oad (_ _^_en // load, road
|
||||
C) oad (eX _^_en // loaded
|
||||
C) oat _^_en // boat
|
||||
old (er_ _^_en // folder, older
|
||||
oo (Ce _^_en // boomer
|
||||
C) oot _^_en // bootable football
|
||||
C) ou (ld_ _^_en // could, should
|
||||
oun (C _^_en // bounce, found
|
||||
_C) ouse _^_en // mouse, house
|
||||
C) outh _^_en // mouth, south
|
||||
ow _^_en // cow, town, down
|
||||
oy (X _^_en // boy, toy
|
||||
|
||||
|
||||
.group ô
|
||||
ôt (_ o // rôt
|
||||
@@ -700,6 +789,16 @@ p) oing (_ wE~ // poing
|
||||
se) pt (_ t // sept
|
||||
se) pt (iè t // septième
|
||||
|
||||
// group p: English section
|
||||
plug _^_en // plug
|
||||
ply (_ _^_en // simply
|
||||
print (_ _^_en // print
|
||||
printer (_ _^_en // printer
|
||||
_) prove (X _^_en // prove
|
||||
_AC) prove (X _^_en // improve
|
||||
_AC) provem _^_en // improvement
|
||||
py (_ _^_en // copy
|
||||
|
||||
|
||||
.group q
|
||||
q k // coq
|
||||
@@ -715,15 +814,21 @@ p) oing (_ wE~ // poing
|
||||
_) qu' (P3 k // qu'il
|
||||
n) q (_ k // cinq cent
|
||||
|
||||
// group q: English section
|
||||
quick _^_en // quick, quickly
|
||||
|
||||
|
||||
.group r
|
||||
right rajt // copyright
|
||||
_su) rr RR // surréaliste
|
||||
cou) rr RR // courrai
|
||||
mou) rr RR // mourrai
|
||||
rr R // erreur
|
||||
r r // rien
|
||||
|
||||
// group r: English section
|
||||
_) rule (X _^_en // rule
|
||||
ry (_ _^_en // theory
|
||||
|
||||
|
||||
.group s
|
||||
s s // verser sien
|
||||
@@ -740,6 +845,7 @@ e) s (_h z2
|
||||
sch S // schéma
|
||||
dé) sh (A z // déshabiller
|
||||
sh S // shérif
|
||||
CA) sh (_ _^_en // punish
|
||||
ss s // assez
|
||||
|
||||
ai) s (em s // vraisemblable
|
||||
@@ -767,6 +873,7 @@ e) s (_h z2
|
||||
ïu) s (_ s // laïus
|
||||
Culu) s (_ s // cumulus
|
||||
plu) s (_ z2 // plus, surplus
|
||||
ylu) s (_ s // stylus
|
||||
mu) s (_ s
|
||||
_mu) s (_
|
||||
ému) s (_
|
||||
@@ -795,11 +902,27 @@ e) s (_h z2
|
||||
s (j z
|
||||
s (v z
|
||||
|
||||
// group s: English section
|
||||
') s (_ _^_en // possessive
|
||||
ship _^_en // friendship
|
||||
shop _^_en // shop
|
||||
sh (At _^_en // shut, shot
|
||||
shout _^_en
|
||||
sky _^_en
|
||||
_) smil _^_en // smile, smiley
|
||||
spy _^_en
|
||||
A) ss (_ _^_en // boss, cross
|
||||
C) s (ton _^_en // winston
|
||||
stone (_ _^_en
|
||||
sy (_ _^_en
|
||||
|
||||
|
||||
.group t
|
||||
t t // bataille
|
||||
V) t (_ t2 // silent at end of verb unless next word starts with a vowel
|
||||
t (_ // silent at end of word
|
||||
_) th (onX t // thon
|
||||
_) th (ymX t // shym
|
||||
ts (_S1 z2 // silent at end of word unless next word starts with a vowel
|
||||
C) t (_ t // compost watt soft script malttact abrupt
|
||||
Vn) t (_ t2 // silent at end of verb unless next word starts with a vowel
|
||||
@@ -813,7 +936,6 @@ C) te (_ t@- // patte
|
||||
|
||||
s) th (m // asthme
|
||||
th t // théorie
|
||||
sCar) t (_ t // smart, start
|
||||
hui) t (_ t // huit
|
||||
|
||||
_) t t // tien tiers
|
||||
@@ -856,12 +978,20 @@ C) te (_ t@- // patte
|
||||
|
||||
_ce) t (_ t
|
||||
|
||||
// group t: English section
|
||||
_) th (AX _^_en // that, this, then, than
|
||||
C) th (_ _^_en // month
|
||||
try (_ _^_en // try, country
|
||||
sCar) t (_ _^_en // smart, start
|
||||
sCar) t (er_ _^_en // starter
|
||||
ty (_ _^_en // party, buty
|
||||
|
||||
|
||||
.group u
|
||||
u y // cruel nuage brut
|
||||
ui w^i
|
||||
|
||||
_b) usi iz // business, businessman
|
||||
_b) usi _^_en // business, businessman
|
||||
c) ueill Wj // cueillir
|
||||
c) ueil (_ Wj // recueil
|
||||
_c) ul (_ y
|
||||
@@ -874,25 +1004,55 @@ C) te (_ t@- // patte
|
||||
um (b W~ // humble
|
||||
um (p W~
|
||||
un (C W~ // emprunt lundi
|
||||
C) un (_ W~ // brun
|
||||
CC) un (_ W~ // brun
|
||||
uc) un (_ W~n2 // aucun
|
||||
un (_ W~n2 // un avion
|
||||
_f) un @n // fun
|
||||
_g) un @n // gun
|
||||
_r) un @n // run
|
||||
_s) un @n // sun, sunday
|
||||
|
||||
fl) ux (_ y // flux, reflux
|
||||
g) u (A // fatigue
|
||||
g) u (ï y // ambiguïté
|
||||
g) u (ë y // ambiguë
|
||||
|
||||
// group u: English section
|
||||
C) u (ch_ _^_en // much such
|
||||
C) ui (ce _^_en // produice, juice
|
||||
up (C _^_en // upper, update
|
||||
under _^_en // under, understand, thunder
|
||||
C) ur (ch _^_en // church
|
||||
urn (X _^_en // burn, turn
|
||||
ust (_ _^_en // just, trust
|
||||
rib) u (teX _^_en // tribute, attribute
|
||||
|
||||
|
||||
.group v
|
||||
v v
|
||||
|
||||
// goup v: English section
|
||||
') ve (_ _^_en
|
||||
voice (_ _^_en
|
||||
void (_ _^_en
|
||||
vy (_ _^_en
|
||||
|
||||
|
||||
.group w
|
||||
w w
|
||||
wa (Ce_ wE // hardware software wave
|
||||
w (agon v // wagon
|
||||
w (r // write
|
||||
|
||||
// group w: English section
|
||||
A) w _^_en
|
||||
wa (Ce_ _^_en // hardware software wave
|
||||
wr _^_en // write
|
||||
w (ACh _^_en // wash, wish, with
|
||||
way _^_en // way, away
|
||||
wh _^_en // what, which, who
|
||||
_) wi _^_en // winner, window, wire
|
||||
wise _^_en
|
||||
_) wom _^_en // woman
|
||||
wor _^_en // word, world
|
||||
|
||||
|
||||
.group x
|
||||
|
||||
+1
-1
@@ -202,7 +202,7 @@ language).
|
||||
t) u (DnK wu@
|
||||
uo uo
|
||||
|
||||
sh) ui wei
|
||||
sh) ui rei
|
||||
sh) u (DnK wo-
|
||||
sh) uo wo
|
||||
|
||||
|
||||
@@ -73,6 +73,8 @@ will put the Mbrola speech output into a WAV file. Or you can pipe the output f
|
||||
<p>
|
||||
The -e option prevents Mbrola from stopping if it finds a combination
|
||||
of phonemes which it doesn't recognise.
|
||||
<p>
|
||||
Some mbrola voices (de5, de6) use a sample rate of 22050 Hz. These need -r22050 rather than -r16000.
|
||||
</ol>
|
||||
<h3>Mbrola Voice Files</h3>
|
||||
|
||||
|
||||
@@ -3,5 +3,5 @@ language en
|
||||
gender female
|
||||
|
||||
pitch 140 220
|
||||
mbrola de5 de5_phtrans 22050
|
||||
mbrola de5 de6_phtrans 22050
|
||||
|
||||
|
||||
+16
-3
@@ -1,4 +1,4 @@
|
||||
48 phoneme tables
|
||||
49 phoneme tables
|
||||
new total
|
||||
base 99 99
|
||||
base2 24 118
|
||||
@@ -30,7 +30,7 @@
|
||||
ru 38 129
|
||||
it 17 121
|
||||
la 21 117
|
||||
es 8 119
|
||||
es 9 119
|
||||
es_la 1 119
|
||||
pt 27 134
|
||||
pt_pt 20 134
|
||||
@@ -47,6 +47,7 @@
|
||||
th 50 142
|
||||
id 14 120
|
||||
tr 14 123
|
||||
ku 12 120
|
||||
ja 7 104
|
||||
|
||||
Data file Used by
|
||||
@@ -621,6 +622,7 @@ ufric/x2 [x2] af
|
||||
[x2] nl
|
||||
[x2] pt
|
||||
ufric/x_hr [x] hr
|
||||
[x] ku
|
||||
ufric/x_sr [h] sr
|
||||
[x] sr
|
||||
ustop/c [c] base
|
||||
@@ -678,7 +680,6 @@ ustop/kr [k] base
|
||||
[k] zhy
|
||||
[k] sw
|
||||
ustop/k_unasp [k] base
|
||||
[q] base
|
||||
[k] base2
|
||||
[k] fi
|
||||
[k] hi
|
||||
@@ -738,6 +739,7 @@ ustop/p_unasp_ [p] base2
|
||||
[p] sk
|
||||
[p] la
|
||||
[p;] ro
|
||||
ustop/q [q] base
|
||||
ustop/t [t] base
|
||||
[t2] en
|
||||
[t] fr
|
||||
@@ -940,6 +942,7 @@ vdiph/eei_2 [eI] eo
|
||||
[eI] id
|
||||
vdiph/eei_3 [eI] en_rp
|
||||
[eI] sk
|
||||
[eI] ku
|
||||
vdiph/eeu [EU] pt
|
||||
[EU] grc
|
||||
[EU] vi
|
||||
@@ -1169,6 +1172,7 @@ vowel/& [a] en_rp
|
||||
[&] fi
|
||||
[&:] hi
|
||||
[&] sv
|
||||
[E] ku
|
||||
vowel/0 [0] en
|
||||
[O] hi
|
||||
[O] pt
|
||||
@@ -1275,6 +1279,7 @@ vowel/aa [a] fi
|
||||
[aa] zhy
|
||||
vowel/aa# [0] en_wi
|
||||
[a2] fi
|
||||
[a] ku
|
||||
vowel/aa_2 [A:] en
|
||||
[A@] en
|
||||
[A:] cy
|
||||
@@ -1383,6 +1388,7 @@ vowel/e_mid2 [E] af
|
||||
[e] fi
|
||||
[E] nl
|
||||
[e] sk
|
||||
[e] es
|
||||
[e] ro
|
||||
[e] el
|
||||
[e] sw
|
||||
@@ -1442,6 +1448,7 @@ vowel/i_6 [i:] en_us
|
||||
[i] hr
|
||||
[i] id
|
||||
[i] tr
|
||||
[i] ku
|
||||
vowel/i#_6 [i.] zh
|
||||
vowel/i#_7 [i[] zh
|
||||
vowel/i_en [i:] en
|
||||
@@ -1460,9 +1467,11 @@ vowel/ii [I] en_rp
|
||||
[I] nl
|
||||
[I] is
|
||||
[i] zhy
|
||||
[e] ku
|
||||
vowel/ii# [Y] cy
|
||||
[y] pl
|
||||
[Y] ru
|
||||
[I] ku
|
||||
vowel/ii_2 [i] zh
|
||||
vowel/ii_3 [I] cy
|
||||
[I] fi
|
||||
@@ -1526,6 +1535,7 @@ vowel/o_4 [oU] en_n
|
||||
vowel/o-_4 [o] ro
|
||||
vowel/o_5 [O] nl
|
||||
vowel/o_6 [O:] nl
|
||||
vowel/o_7 [o] ku
|
||||
vowel/oe [W] en
|
||||
[W] af
|
||||
[W] de
|
||||
@@ -1623,6 +1633,7 @@ vowel/u#_4 [U] en_sc
|
||||
vowel/u_5 [u] sw
|
||||
vowel/u_6 [U] pt_pt
|
||||
[u] pt_pt
|
||||
[u] ku
|
||||
vowel/u#_6 [u:] en_us
|
||||
vowel/u_7 [u] vi
|
||||
vowel/u#_7 [u#] tr
|
||||
@@ -1649,6 +1660,7 @@ vowel/u_bck2 [u:] la
|
||||
vowel/u_fnt [u:] en_rp
|
||||
vowel/uu [U] en
|
||||
[U] en_wm
|
||||
vowel/uu# [U] ku
|
||||
vowel/uu_2 [U] base2
|
||||
[U] de
|
||||
[U] ta
|
||||
@@ -1706,6 +1718,7 @@ vowel/y#_3 [W] is
|
||||
vowel/y_4 [y:] no
|
||||
vowel/y_5 [y:] sv
|
||||
[y] tr
|
||||
[y] ku
|
||||
vowel/yy [y"] fr_ca
|
||||
[y] no
|
||||
vowel/yy_3 [y] sv
|
||||
|
||||
@@ -3,6 +3,12 @@
|
||||
// Spanish - based on Base2
|
||||
//====================================================
|
||||
|
||||
phoneme e
|
||||
vowel starttype (e) endtype (e)
|
||||
length 170
|
||||
formants vowel/e_mid2
|
||||
endphoneme
|
||||
|
||||
phoneme E
|
||||
vowel starttype (e) endtype (e)
|
||||
length 180
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
|
||||
//====================================================
|
||||
// Latin American Spanish - based on Spanish
|
||||
//====================================================
|
||||
|
||||
|
||||
+5
-2
@@ -996,8 +996,8 @@ phoneme q
|
||||
vowelin f1=1 f2=1700 0 200 f3=-300 80 f4 paus rms=35
|
||||
vowelout f1=1 f2=1700 0 200 f3=-300 80 f4 rms=30
|
||||
lengthmod 2
|
||||
wave ustop/k_unasp%60
|
||||
before _ ustop/k_unasp%50
|
||||
wave ustop/q%50
|
||||
before _ ustop/q%40
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -1282,5 +1282,8 @@ include ph_indonesian
|
||||
phonemetable tr base2
|
||||
include ph_turkish
|
||||
|
||||
phonemetable ku base2
|
||||
include ph_kurdish
|
||||
|
||||
phonemetable ja base
|
||||
include ph_japanese
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+4
-2
@@ -1,3 +1,5 @@
|
||||
# removed -fno-exceptions because it caused problems with stdio library on some platforms
|
||||
|
||||
PREFIX=/
|
||||
BINDIR=$(PREFIX)/usr/bin
|
||||
INCDIR=$(PREFIX)/usr/include/espeak
|
||||
@@ -66,7 +68,7 @@ all: $(BIN_NAME) $(LIB_NAME) $(STATIC_LIB_NAME) $(BIN2_NAME)
|
||||
mv $(LIB_NAME) $(LIB_NAME).$(LIBTAG)
|
||||
|
||||
.cpp.o:
|
||||
$(CXX) $(CXXFLAGS) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -pedantic -I. -c -fno-exceptions $<
|
||||
$(CXX) $(CXXFLAGS) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -pedantic -I. -c $<
|
||||
|
||||
$(BIN_NAME): $(OBJS1)
|
||||
$(CXX) -o $@ $(OBJS1) $(LIBS1)
|
||||
@@ -78,7 +80,7 @@ $(BIN2_NAME): $(OBJS3) $(LIB_NAME)
|
||||
|
||||
x_%.o: %.cpp
|
||||
$(CXX) $(CXXFLAGS) -Wall -fpic -pedantic \
|
||||
-I. -D LIBRARY -c -fno-exceptions $< -o x_$*.o
|
||||
-I. -D LIBRARY -c $< -o x_$*.o
|
||||
|
||||
$(LIB_NAME): $(OBJS2)
|
||||
$(CXX) -shared $(SONAME_OPT)$(LIB_NAME).$(LIB_VERSION) -o $@ $(OBJS2) $(LIBS2)
|
||||
|
||||
+8
-1
@@ -454,6 +454,7 @@ int Translator::LookupNum3(int value, char *ph_out, int suppress_null, int thous
|
||||
char ph_digits[50];
|
||||
char ph_thousands[50];
|
||||
char ph_hundred_and[12];
|
||||
char ph_thousand_and[12];
|
||||
|
||||
hundreds = value / 100;
|
||||
buf1[0] = 0;
|
||||
@@ -461,6 +462,7 @@ int Translator::LookupNum3(int value, char *ph_out, int suppress_null, int thous
|
||||
if(hundreds > 0)
|
||||
{
|
||||
ph_thousands[0] = 0;
|
||||
ph_thousand_and[0] = 0;
|
||||
|
||||
Lookup("_0C",ph_100);
|
||||
|
||||
@@ -486,6 +488,11 @@ int Translator::LookupNum3(int value, char *ph_out, int suppress_null, int thous
|
||||
ph_digits[0] = 0;
|
||||
if(hundreds > 0)
|
||||
{
|
||||
if((langopts.numbers & 0x100000) && (prev_thousands || (ph_thousands[0] != 0)))
|
||||
{
|
||||
Lookup("_0and",ph_thousand_and);
|
||||
}
|
||||
|
||||
suppress_null = 1;
|
||||
|
||||
found = 0;
|
||||
@@ -513,7 +520,7 @@ int Translator::LookupNum3(int value, char *ph_out, int suppress_null, int thous
|
||||
}
|
||||
}
|
||||
|
||||
sprintf(buf1,"%s%s%s",ph_thousands,ph_digits,ph_100);
|
||||
sprintf(buf1,"%s%s%s%s",ph_thousands,ph_thousand_and,ph_digits,ph_100);
|
||||
}
|
||||
|
||||
ph_hundred_and[0] = 0;
|
||||
|
||||
@@ -127,6 +127,7 @@ typedef struct {
|
||||
// Several phoneme tables may be loaded into memory. phoneme_tab points to
|
||||
// one for the current voice
|
||||
extern int n_phoneme_tab;
|
||||
extern int current_phoneme_table;
|
||||
extern PHONEME_TAB *phoneme_tab[N_PHONEME_TAB];
|
||||
extern unsigned char phoneme_tab_flags[N_PHONEME_TAB]; // bit 0: not inherited
|
||||
|
||||
|
||||
+7
-1
@@ -91,6 +91,7 @@ static const char *help_text =
|
||||
"-q\t Quiet, don't produce any speech (may be useful with -x)\n"
|
||||
"-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"
|
||||
"--stdout Write speech output to stdout\n"
|
||||
"--compile=<voice name>\n"
|
||||
"\t Compile the pronunciation rules and dictionary in the current\n"
|
||||
@@ -500,6 +501,7 @@ int main (int argc, char **argv)
|
||||
option_phonemes = 0;
|
||||
option_waveout = 0;
|
||||
option_wordgap = 0;
|
||||
option_endpause = 1;
|
||||
option_multibyte = espeakCHARS_AUTO; // auto
|
||||
f_trans = stdout;
|
||||
|
||||
@@ -559,7 +561,7 @@ int main (int argc, char **argv)
|
||||
#else
|
||||
while(true)
|
||||
{
|
||||
c = getopt_long (argc, argv, "a:bf:g:hk:l:p:qs:v:w:xXm",
|
||||
c = getopt_long (argc, argv, "a:bf:g:hk:l:p:qs:v:w:xXmz",
|
||||
long_options, &option_index);
|
||||
|
||||
/* Detect the end of the options. */
|
||||
@@ -635,6 +637,10 @@ int main (int argc, char **argv)
|
||||
strncpy0(wavefile,optarg2,sizeof(wavefile));
|
||||
break;
|
||||
|
||||
case 'z':
|
||||
option_endpause = 0;
|
||||
break;
|
||||
|
||||
case 0x100: // --stdin
|
||||
flag_stdin = 1;
|
||||
break;
|
||||
|
||||
+3
-1
@@ -35,13 +35,14 @@
|
||||
#include "translate.h"
|
||||
#include "wave.h"
|
||||
|
||||
const char *version_string = "1.31.10 12.Feb.08";
|
||||
const char *version_string = "1.31.12 16.Feb.08";
|
||||
const int version_phdata = 0x013105;
|
||||
|
||||
int option_device_number = -1;
|
||||
|
||||
// copy the current phoneme table into here
|
||||
int n_phoneme_tab;
|
||||
int current_phoneme_table;
|
||||
PHONEME_TAB *phoneme_tab[N_PHONEME_TAB];
|
||||
unsigned char phoneme_tab_flags[N_PHONEME_TAB]; // bit 0: not inherited
|
||||
|
||||
@@ -574,6 +575,7 @@ void SelectPhonemeTable(int number)
|
||||
n_phoneme_tab = 0;
|
||||
SetUpPhonemeTable(number,0); // recursively for included phoneme tables
|
||||
n_phoneme_tab++;
|
||||
current_phoneme_table = number;
|
||||
} // end of SelectPhonemeTable
|
||||
|
||||
|
||||
|
||||
@@ -1544,6 +1544,11 @@ int SpeakNextClause(FILE *f_in, const void *text_in, int control)
|
||||
return(0);
|
||||
}
|
||||
|
||||
if(current_phoneme_table != voice->phoneme_tab_ix)
|
||||
{
|
||||
SelectPhonemeTable(voice->phoneme_tab_ix);
|
||||
}
|
||||
|
||||
// read the next clause from the input text file, translate it, and generate
|
||||
// entries in the wavegen command queue
|
||||
p_text = translator->TranslateClause(f_text,p_text,&clause_tone,&voice_change);
|
||||
|
||||
@@ -440,6 +440,22 @@ SetLengthMods(tr,3); // all equal
|
||||
}
|
||||
break;
|
||||
|
||||
case L('k','u'): // Kurdish
|
||||
{
|
||||
static const unsigned char stress_amps_ku[8] = {16,16, 20,20, 20,24, 24,22 };
|
||||
static const short stress_lengths_ku[8] = {170,170, 190,170, 0,0, 230,240};
|
||||
|
||||
tr = new Translator();
|
||||
SetupTranslator(tr,stress_lengths_ku,stress_amps_ku);
|
||||
tr->charset_a0 = charsets[9]; // ISO-8859-9 - Latin5
|
||||
|
||||
tr->langopts.stress_rule = 7; // stress on the last syllable, before any explicitly unstressed syllable
|
||||
|
||||
tr->langopts.numbers = 0x100c69;
|
||||
tr->langopts.max_initial_consonants = 2;
|
||||
}
|
||||
break;
|
||||
|
||||
case L('l','a'): //Latin
|
||||
{
|
||||
tr = new Translator();
|
||||
|
||||
+2
-1
@@ -316,7 +316,7 @@ typedef struct {
|
||||
// bit3= , decimal separator, not .
|
||||
// bit4=use three-and-twenty rather than twenty-three
|
||||
// bit5='and' between tens and units
|
||||
// bit6=add "and" after hundred and thousand
|
||||
// bit6=add "and" after hundred or thousand
|
||||
// bit7=don't have "and" both after hundreds and also between tens and units
|
||||
// bit8=only one primary stress in tens+units
|
||||
// bit9=only one vowel betwen tens and units
|
||||
@@ -328,6 +328,7 @@ typedef struct {
|
||||
// bit17=recognize roman numbers
|
||||
// bit18=Roman numbers only if upper case
|
||||
// bit19=don't add pause after a number
|
||||
// bit20='and' before hundreds
|
||||
int numbers;
|
||||
|
||||
// bits 1-4 use variant form of numbers before thousands,millions,etc.
|
||||
|
||||
Reference in New Issue
Block a user