git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@80 d46cf337-b52f-0410-862d-fd96e6ae7743master
mc m@k | mc m@k | ||||
oem $abbrev | oem $abbrev | ||||
ok $abbrev | ok $abbrev | ||||
otoh $abbrev | |||||
omg $abbrev | |||||
os $abbrev | os $abbrev | ||||
otoh $abbrev | |||||
riscos rIskoUEs | riscos rIskoUEs | ||||
sae $abbrev | sae $abbrev | ||||
st s@nt | st s@nt | ||||
alm A:m | alm A:m | ||||
almost O:lmoUst | almost O:lmoUst | ||||
allspice $1 | allspice $1 | ||||
alternate Olt'3:n@t $only | |||||
alternate Olt3neIt $verb | |||||
alternately Olt'3:n@tlI2 $verbf | |||||
alternative Olt'3:n@tIv | |||||
alternate O:lt'3:n@t $only | |||||
alternate O:lt3neIt $verb | |||||
alternately O:lt'3:n@tlI2 $verbf | |||||
alternative O:lt'3:n@tIv | |||||
altogether ,O:lt@gED3 | altogether ,O:lt@gED3 | ||||
always O:lweIz | always O:lweIz | ||||
aluminium aljUm'Ini@m | aluminium aljUm'Ini@m | ||||
// place names | // place names | ||||
Altrincham O:ltrIN@m | |||||
Anglesey aNg@LsI2 | |||||
Argyle A@g'aIl | |||||
Argyll A@g;aIl | |||||
Bacup beIk@p | |||||
Berwick bErIk | |||||
Betws bEtUs | |||||
Cambridge keImbrIdZ | |||||
Cheadle tSi:d@L | |||||
Cheshire tSES3 | |||||
Chiswick tSIzIk | |||||
Dolgellau d0lg'EClaI | |||||
Dover doUv3 | |||||
Dumfries dVmfr'i:s | |||||
Dyfed d'VvId | |||||
Edinburgh EdInb%Vr@ | |||||
Ely i:lI2 | |||||
Exeter EksIt3 | |||||
Exmoor EksmU@ | |||||
Fylde faIld | |||||
Glasgow glaazgoU | |||||
Glenrothes gl,Enr'0TI2s | |||||
Greenwich grEnItS | |||||
Harwich harIdZ | |||||
Hasting heIstI2N | |||||
Kirkcaldy kIRk'0dI2 | |||||
Leven li:v@n | |||||
Lincoln lInk@n | |||||
Malvern mO:lv3n | |||||
Morecambe mo@k@m | |||||
Norfolk nO@f@k | |||||
Norwich n0rItS | |||||
Plymouth plIm@T | |||||
Regis ri:dZI2s | |||||
Rhyl rIl | |||||
Salisbury sO:lsbrI2 | |||||
Southend sA:f'End | |||||
Suffolk sVf@k | |||||
Walsall wO:lsO:l | |||||
Watford w0tf@d | |||||
Welwyn wElIn | |||||
Wirral wIr@L | |||||
Ababa aba2b@ | |||||
Accra akra2 | |||||
Addis adIs | |||||
Adelaide ad@leId | |||||
Aegean $2 | |||||
Afghan afgan | |||||
Aires aIrIz | |||||
Alamo al@moU | |||||
Albuquerque alb@k'3:kI | |||||
Algiers $2 | |||||
Amman a2m'A:n | |||||
Andes andi:z | |||||
Angeles andZ@li:z | |||||
Antarctica $2 | |||||
Antigua ant'i:g@ | |||||
Antilles ant'Ili:z | |||||
Apennine ap@naIn | |||||
Armageddon A@ma2g'Ed@n | |||||
Arkansas A@k@nsO: | |||||
Athens aTInz | |||||
Bahrain $2 | |||||
Belgrade $2 | |||||
Barents bar@nt|s | |||||
Bangledesh baNgl@d'ES | |||||
Beijing $2 | |||||
Beirut beIr'u:t | |||||
Belize bEl'i:z | |||||
Bengal b,Eng'O:l | |||||
Benin bEnIn | |||||
Berlin b3:l'In | |||||
Bhutan bu:t'an | |||||
Bogata b0ga2t'A: | |||||
Bucharest bu:k@r'Est | |||||
Budapest bu:d@p'Est | |||||
Buenos bweIn0s | |||||
Burundi bUr'UndI | |||||
Brazil braz'Il | |||||
Cadiz $2 | |||||
Cairo kaIroU | |||||
Calcutta $2 | |||||
Canada kan@d@ | |||||
Carolina kar@l'aIn@ | |||||
Caribbean kar@b'i@n | |||||
Chicago SIk'A:goU | |||||
Chile tSIlI2 | |||||
Ceylon $2 | |||||
Cologne k@loUn | |||||
Congo $1 | |||||
Copenhagen koUp@nh'eIg@n | |||||
Cruz kru:z | |||||
Cyprus saIpr@s | |||||
Dahomey $2 | |||||
Damascus da2mask@s | |||||
Danish deInIS | |||||
Delhi dElI2 | |||||
Djibouti dZIb'u:tI | |||||
Egyptian IdZ'IpS@n | |||||
Eire e@r@ | |||||
Geneva dZ@ni:v@ | |||||
Harare h@rA:rI | |||||
Hanoi han'OI | |||||
Hawaii h@w'aIi: | |||||
Hawaiian h@w'aI@n | |||||
Hebrew hi:bru: | |||||
Hebrides hEbr@di:z | |||||
Honduras h0nd'jU@ra2s | |||||
Houston hju:st@n | |||||
Idaho $1 | |||||
Illinois Il@n'OI | |||||
Indochina IndoUtS'aIn@ | |||||
Israeli Izr'eIlI2 | |||||
Istanbul ,Ist,anb'Ul | |||||
Italia It'alI2@ // Italian(s) | |||||
Jakarta $2 | |||||
Jerusalem dZ@ru:s@l@m | |||||
Johannesburg $2 | |||||
Kalgoorlie kalgU@lI2 | |||||
Karachi k@rA@tSI2 | |||||
Kiev ki:Ev | |||||
Khmer kmi@ | |||||
Korea kOr'i:@ | |||||
Korean kOr'i:@n | |||||
Kuala kwA:la2 | |||||
Lagos leIg0s | |||||
Leone li:'oUn | |||||
Lesotho l@s'u:tu: | |||||
Liberia laIb'i@ri:@ | |||||
Lima li:ma2 | |||||
Luxembourg lVks@mb3:g | |||||
?5 Luxembourg lVks@mbVRg | |||||
Madagascar mad@g'ask3 | |||||
Madras m@draas | |||||
Madrid m@drId | |||||
Malawi ma2lA:wI2 | |||||
Maldives mO:ld'i:v | |||||
Mali mA:lI2 | |||||
Manhatten $2 | |||||
Massachusetts $3 | |||||
Maya maI@ | |||||
Mayan maI@n | |||||
Altrincham O:ltrIN@m | |||||
Anglesey aNg@LsI2 | |||||
Argyle A@g'aIl | |||||
Argyll A@g;aIl | |||||
Bacup beIk@p | |||||
Berwick bErIk | |||||
Betws bEtUs | |||||
Cambridge keImbrIdZ | |||||
Cheadle tSi:d@L | |||||
Cheshire tSES3 | |||||
Chiswick tSIzIk | |||||
Dolgellau d0lg'EClaI | |||||
Dover doUv3 | |||||
Dumfries dVmfr'i:s | |||||
Dyfed d'VvId | |||||
Edinburgh EdInb%Vr@ | |||||
Ely i:lI2 | |||||
Exeter EksIt3 | |||||
Exmoor EksmU@ | |||||
Fylde faIld | |||||
Glasgow glaazgoU | |||||
Glenrothes gl,Enr'0TI2s | |||||
Greenwich grEnItS | |||||
Harwich harIdZ | |||||
Hasting heIstI2N | |||||
Kirkcaldy kIRk'0dI2 | |||||
Leven li:v@n | |||||
Lincoln lInk@n | |||||
Malvern mO:lv3n | |||||
Morecambe mo@k@m | |||||
Norfolk nO@f@k | |||||
Norwich n0rItS | |||||
Plymouth plIm@T | |||||
Regis ri:dZI2s | |||||
Rhyl rIl | |||||
Salisbury sO:lsbrI2 | |||||
Southend sA:f'End | |||||
Suffolk sVf@k | |||||
Walsall wO:lsO:l | |||||
Watford w0tf@d | |||||
Welwyn wElIn | |||||
Wirral wIr@L | |||||
Ababa aba2b@ | |||||
Accra akra2 | |||||
Addis adIs | |||||
Adelaide ad@leId | |||||
Aegean $2 | |||||
Afghan afgan | |||||
Aires aIrIz | |||||
Alamo al@moU | |||||
Albuquerque alb@k'3:kI | |||||
Algiers $2 | |||||
Amman a2m'A:n | |||||
Andes andi:z | |||||
Angeles andZ@li:z | |||||
Antarctica $2 | |||||
Antigua ant'i:g@ | |||||
Antilles ant'Ili:z | |||||
Apennine ap@naIn | |||||
Armageddon A@ma2g'Ed@n | |||||
Arkansas A@k@nsO: | |||||
Athens aTInz | |||||
Bahrain $2 | |||||
Belgrade $2 | |||||
Barents bar@nt|s | |||||
Bangledesh baNgl@d'ES | |||||
Beijing $2 | |||||
Beirut beIr'u:t | |||||
Belize bEl'i:z | |||||
Bengal b,Eng'O:l | |||||
Benin bEnIn | |||||
Berlin b3:l'In | |||||
Bhutan bu:t'an | |||||
Bogata b0ga2t'A: | |||||
Bucharest bu:k@r'Est | |||||
Budapest bu:d@p'Est | |||||
Buenos bweIn0s | |||||
Burundi bUr'UndI | |||||
Brazil braz'Il | |||||
Cadiz $2 | |||||
Cairo kaIroU | |||||
Calcutta $2 | |||||
Canada kan@d@ | |||||
Carolina kar@l'aIn@ | |||||
Caribbean kar@b'i@n | |||||
Chicago SIk'A:goU | |||||
Chile tSIlI2 | |||||
Ceylon $2 | |||||
Cologne k@loUn | |||||
Congo $1 | |||||
Copenhagen koUp@nh'eIg@n | |||||
Cruz kru:z | |||||
Cyprus saIpr@s | |||||
Dahomey $2 | |||||
Damascus da2mask@s | |||||
Danish deInIS | |||||
Delhi dElI2 | |||||
Djibouti dZIb'u:tI | |||||
Egyptian IdZ'IpS@n | |||||
Eire e@r@ | |||||
Geneva dZ@ni:v@ | |||||
Harare h@rA:rI | |||||
Hanoi han'OI | |||||
Hawaii h@w'aIi: | |||||
Hawaiian h@w'aI@n | |||||
Hebrew hi:bru: | |||||
Hebrides hEbr@di:z | |||||
Honduras h0nd'jU@ra2s | |||||
Houston hju:st@n | |||||
Idaho $1 | |||||
Illinois Il@n'OI | |||||
Indochina IndoUtS'aIn@ | |||||
Israeli Izr'eIlI2 | |||||
Istanbul ,Ist,anb'Ul | |||||
Italia It'alI2@ // Italian(s) | |||||
Jakarta $2 | |||||
Jerusalem dZ@ru:s@l@m | |||||
Johannesburg $2 | |||||
Kalgoorlie kalgU@lI2 | |||||
Karachi k@rA@tSI2 | |||||
Kiev ki:Ev | |||||
Khmer kmi@ | |||||
Korea kOr'i:@ | |||||
Korean kOr'i:@n | |||||
Kuala kwA:la2 | |||||
Lagos leIg0s | |||||
Leone li:'oUn | |||||
Lesotho l@s'u:tu: | |||||
Liberia laIb'i@ri:@ | |||||
Lima li:ma2 | |||||
Luxembourg lVks@mb3:g | |||||
?5 Luxembourg lVks@mbVRg | |||||
Madagascar mad@g'ask3 | |||||
Madras m@draas | |||||
Madrid m@drId | |||||
Malawi ma2lA:wI2 | |||||
Maldives mO:ld'i:v | |||||
Mali mA:lI2 | |||||
Manhatten $2 | |||||
Massachusetts $3 | |||||
Maya maI@ | |||||
Mayan maI@n | |||||
Melbourne mElb3n | Melbourne mElb3n | ||||
Memphis mEmfIs | |||||
Mexico $1 | |||||
Milan $2 | |||||
Mindanao mInd@n'aU | |||||
Minneapolis mIni:'ap@lI2s | |||||
Missouri mIs'U@rI | |||||
Montreal m0ntrI'O:l | |||||
Morocco m@r0koU | |||||
Munich mju:nIk | |||||
Nairobi naIr'oUbI | |||||
Nauru naUru: | |||||
Nepal nEp'O:l | |||||
Noumea nu:m'eI@ | |||||
Oahu oU'A:hu: | |||||
Ohio oUh'aIoU | |||||
Oman oUm'an | |||||
Oregon 0rIg@n | |||||
Pacific pa2sIfIk | |||||
Palestine pal@staIn | |||||
Palestinian pal@st'Ini:@n | |||||
Panama pan@mA: | |||||
Paris parIs | |||||
Peking pi:k'IN | |||||
Peru p@ru: | |||||
Phillipine fIlIpi:n | |||||
Philipine fIlIpi:n // misspell | |||||
Poland poUl@nd | |||||
Polish poUlIS $capital $only | |||||
Portuguese po@tju:g'i:z | |||||
Prague prA:g | |||||
Pyrenees pIr@n'i:z | |||||
Qatar katA@ | |||||
Quebec kwI2bEk | |||||
Rico ri:koU | |||||
Saigon saIg'0n | |||||
Santiago santI'A:goU | |||||
Savannah $2 | |||||
Savoy sa2vOI | |||||
Seattle si:'at@L | |||||
Seychelle seIS'El | |||||
Slovak sloUvak | |||||
Seoul soUl | |||||
(sri lanka) sr,i:||l'anka2 | |||||
Sudan su:d'an | |||||
Suez su:Iz | |||||
Sulawesi su:la2w'eIsI | |||||
Suriname sU@rIn'am | |||||
Taipei t,aIp'eI | |||||
Taiwan taI'wan | |||||
(tel aviv) t,El||a2v'i:v | |||||
Tibet tIb'Et | |||||
Totonto t@r0ntoU | |||||
Timor ti:mo@ | |||||
Tokyo toUkIoU | |||||
Toulouse tu:l'u:z | |||||
Tripoli trIp@lI2 | |||||
Ukraine ju:kr'eIn | |||||
Ural ju:@r@L | |||||
Utah ju:tA: | |||||
Utrecht ju:trECt | |||||
Vancouver $2 | |||||
Vegas veIg@s | |||||
Vienna vI'En@ | |||||
Winnipeg wInI2pEg | |||||
Wisconsin wIsk'0nsIn | |||||
Wyoming waI'oUmI2N | |||||
Xhosa kO:s@ | |||||
zaire zaI'i@ | |||||
zimbabwe zI2mbA:bwI2 | |||||
Aaron e@r@n | |||||
Abe eIb | |||||
Abu abu: | |||||
Abraham eIbr@ham | |||||
Ada eId@ $onlys | |||||
Adrian eIdri@n | |||||
Agnes agn@s | |||||
Ahab eIhab | |||||
Ahmed axmEd | |||||
Alan al@n | |||||
Alec alIk | |||||
Alex alIks | |||||
Alfred alfrId | |||||
Alice alIs | |||||
Allen al@n | |||||
Alison alIs@n | |||||
Amanda $2 | |||||
Amy eImI2 | |||||
Andre 0ndreI | |||||
Anthony ant@nI2 | |||||
Anton ant0n | |||||
Ares e@ri:z | |||||
Astley astlI2 | |||||
Barbara bA@b@r@ | |||||
Boris b0rIs | |||||
Brien braI@n | |||||
Carol kar@l | |||||
Calliope ka2laI@pI | |||||
Canberra kanb@r@ | |||||
Cassandra k@sandr@ | |||||
Cassey keIsI2 | |||||
Catherine kaTrIn | |||||
Chris krIs | |||||
Connor k0n3 | |||||
Daphne dafnI2 | |||||
Darryl dar@L | |||||
Davie deIvI2 | |||||
Davis deIvIs | |||||
Denise d@ni:s | |||||
Derek dErIk | |||||
Dinah daIn@ | |||||
Dominic d0mInIk | |||||
Donald d0n@Ld | |||||
Dougall du:g@L | |||||
Dylan dIl@n | |||||
Edith i:dIT | |||||
Elizabeth I2lIz@b@T | |||||
Emma Em@ | |||||
Evan Ev@n | |||||
Gary garI2 | |||||
Geraint gEraInt | |||||
Gilbert gIlb3t | |||||
Giles gaIlz | |||||
Glynn glIn | |||||
Graeme greI@m | |||||
Graham greI@m | |||||
Hadrian heIdri:@n | |||||
Hugh hju: | |||||
Hughes hju:z | |||||
Huw hju: | |||||
Iain i:@n | |||||
Ian i:@n | |||||
Igor i:go@ | |||||
Imogen Im@dZ@n | |||||
Irene aIri:n | |||||
Isaac aIs@k | |||||
Isabel Iz@bEl | |||||
Isiah aIz'aI@ | |||||
Ivan aIv@n | |||||
Jacob dZeIk@b | |||||
Jamie dZeImI2 | |||||
Jesus dZi:z@s | |||||
José hoUs'eI | |||||
Jose hoUs'eI | |||||
Juan hwA:n | |||||
Judy dZu:dI2 | |||||
Karen kar@n | |||||
Karene ka2ri:n | |||||
Katherine kaTrIn | |||||
Kieran ki@r@n | |||||
Laurence l0r@ns | |||||
Lawrence l0r@ns | |||||
Lenore lEn'o@ | |||||
Leroy li:rOI | |||||
Liam li:@m | |||||
Louis lu:I | |||||
Louise lu:w'i:z | |||||
Mahmoud maxm'u:d | |||||
Malcolm malk@m | |||||
Maria ma2ri:@ | |||||
Marie ma2ri: | |||||
Margaret mA@gr@t | |||||
Marilyn mar@lIn | |||||
Matilda ma2tIld@ | |||||
Matthew maTju: | |||||
Maurice m0rIs | |||||
Mavis meIvIs | |||||
Melissa $2 | |||||
Miami maI'amI | |||||
Michael maIk@L | |||||
Michelle mI2SEl | |||||
Miguel mi:Q'El | |||||
Mohammad moUh'amId | |||||
Muhammad moUh'amId | |||||
Moira mOIr@ | |||||
Neville nEvIl | |||||
Nicholas nIk@l@s | |||||
Nicosia nIk@s'i:@ | |||||
Nigel naIdZ@L | |||||
Nguyen nu:jEn | |||||
Omar oUmA@ | |||||
Oscar 0sk3 | |||||
Ottawa 0ta2w@ | |||||
Pamela pam@l@ | |||||
Pandora $2 | |||||
Penelope p@nEl@pI2 | |||||
Phoebe fi:bi: | |||||
Rachel reItS@L | |||||
Rica ri:ka2 | |||||
Robert r0b3t | |||||
Roderick r0drIk | |||||
Samantha s@manT@ | |||||
Sarah se@r@ | |||||
Seamus SeIm@s | |||||
Sean SO:n | |||||
Sebastian $2 | |||||
Sheila Si:l@ | |||||
Sonia s0nj@ | |||||
Sophie soUfI2 | |||||
Stephen sti:v@n | |||||
Stewart stju:3t | |||||
Stuart stju:3t | |||||
Theresa t@ri:z@ | |||||
Thomas t0m@s | |||||
Tina ti:n@ | |||||
Tracy treIsI2 | |||||
Tricia trIS@ | |||||
Wally w0lI2 | |||||
Yvonne $2 | |||||
Zoe zoUI | |||||
Andromeda andr'0mId@ | |||||
Buchannan bju:k'an@n | |||||
Campbell kamb@l | |||||
Disney dIznI2 | |||||
Patel p@t'El | |||||
Prentice prEntIs | |||||
Reuter rOIt3 | |||||
Ubuntu u:b'u:ntu: | |||||
Yaesu jeIsu: | |||||
zhivago ZI2vA:goU | |||||
Memphis mEmfIs | |||||
Mexico $1 | |||||
Miami maI'amI | |||||
Milan $2 | |||||
Mindanao mInd@n'aU | |||||
Minneapolis mIni:'ap@lI2s | |||||
Missouri mIs'U@rI | |||||
Montreal m0ntrI'O:l | |||||
Morocco m@r0koU | |||||
Munich mju:nIk | |||||
Nairobi naIr'oUbI | |||||
Nauru naUru: | |||||
Nebraska $2 | |||||
Nepal nEp'O:l | |||||
Noumea nu:m'eI@ | |||||
Oahu oU'A:hu: | |||||
Ohio oUh'aIoU | |||||
Oman oUm'an | |||||
Oregon 0rIg@n | |||||
Pacific pa2sIfIk | |||||
Palestine pal@staIn | |||||
Palestinian pal@st'Ini:@n | |||||
Panama pan@mA: | |||||
Paris parIs | |||||
Peking pi:k'IN | |||||
Peru p@ru: | |||||
Phillipine fIlIpi:n | |||||
Philipine fIlIpi:n // misspell | |||||
Poland poUl@nd | |||||
Polish poUlIS $capital $only | |||||
Portuguese po@tju:g'i:z | |||||
Prague prA:g | |||||
Pyrenees pIr@n'i:z | |||||
Qatar katA@ | |||||
Quebec kwI2bEk | |||||
Saigon saIg'0n | |||||
Santiago santI'A:goU | |||||
Savannah $2 | |||||
Savoy sa2vOI | |||||
Seattle si:'at@L | |||||
Seychelle seIS'El | |||||
Slovak sloUvak | |||||
Seoul soUl | |||||
(sri lanka) sr,i:||l'anka2 | |||||
Sudan su:d'an | |||||
Suez su:Iz | |||||
Sulawesi su:la2w'eIsI | |||||
Suriname sU@rIn'am | |||||
Taipei t,aIp'eI | |||||
Taiwan taI'wan | |||||
(tel aviv) t,El||a2v'i:v | |||||
Tibet tIb'Et | |||||
Totonto t@r0ntoU | |||||
Timor ti:mo@ | |||||
Tokyo toUkIoU | |||||
Toulouse tu:l'u:z | |||||
Tripoli trIp@lI2 | |||||
Ukraine ju:kr'eIn | |||||
Ural ju:@r@L | |||||
Utah ju:tA: | |||||
Utrecht ju:trECt | |||||
Vancouver $2 | |||||
Vegas veIg@s | |||||
Vienna vI'En@ | |||||
Winnipeg wInI2pEg | |||||
Wisconsin wIsk'0nsIn | |||||
Wyoming waI'oUmI2N | |||||
Xhosa kO:s@ | |||||
zaire zaI'i@ | |||||
zimbabwe zI2mbA:bwI2 | |||||
Aaron e@r@n | |||||
Abe eIb | |||||
Abu abu: | |||||
Abraham eIbr@ham | |||||
Ada eId@ $onlys | |||||
Adrian eIdri@n | |||||
Agnes agn@s | |||||
Ahab eIhab | |||||
Ahmed axmEd | |||||
Alan al@n | |||||
Alec alIk | |||||
Alex alIks | |||||
Alfred alfrId | |||||
Alice alIs | |||||
Allen al@n | |||||
Alison alIs@n | |||||
Amanda $2 | |||||
Amy eImI2 | |||||
Andre 0ndreI | |||||
Anthony ant@nI2 | |||||
Anton ant0n | |||||
Ares e@ri:z | |||||
Astley astlI2 | |||||
Barbara bA@b@r@ | |||||
Boris b0rIs | |||||
Brien braI@n | |||||
Carol kar@l | |||||
Calliope ka2laI@pI | |||||
Canberra kanb@r@ | |||||
Cassandra k@sandr@ | |||||
Cassey keIsI2 | |||||
Catherine kaTrIn | |||||
Chris krIs | |||||
Connor k0n3 | |||||
Daphne dafnI2 | |||||
Darryl dar@L | |||||
Davie deIvI2 | |||||
Davis deIvIs | |||||
Denise d@ni:s | |||||
Derek dErIk | |||||
Dinah daIn@ | |||||
Dominic d0mInIk | |||||
Donald d0n@Ld | |||||
Dougall du:g@L | |||||
Dylan dIl@n | |||||
Edith i:dIT | |||||
Elizabeth I2lIz@b@T | |||||
Emma Em@ | |||||
Evan Ev@n | |||||
Gary garI2 | |||||
Geraint gEraInt | |||||
Gilbert gIlb3t | |||||
Giles gaIlz | |||||
Glynn glIn | |||||
Graeme greI@m | |||||
Graham greI@m | |||||
Hadrian heIdri:@n | |||||
Hugh hju: | |||||
Hughes hju:z | |||||
Huw hju: | |||||
Iain i:@n | |||||
Ian i:@n | |||||
Igor i:go@ | |||||
Imogen Im@dZ@n | |||||
Irene aIri:n | |||||
Isaac aIs@k | |||||
Isabel Iz@bEl | |||||
Isiah aIz'aI@ | |||||
Ivan aIv@n | |||||
Jacob dZeIk@b | |||||
Jamie dZeImI2 | |||||
Jesus dZi:z@s | |||||
José hoUs'eI | |||||
Jose hoUs'eI | |||||
Juan hwA:n | |||||
Judy dZu:dI2 | |||||
Karen kar@n | |||||
Karene ka2ri:n | |||||
Katherine kaTrIn | |||||
Kieran ki@r@n | |||||
Laurence l0r@ns | |||||
Lawrence l0r@ns | |||||
Lenore lEn'o@ | |||||
Leroy li:rOI | |||||
Liam li:@m | |||||
Louis lu:I | |||||
Louise lu:w'i:z | |||||
Mahmoud maxm'u:d | |||||
Malcolm malk@m | |||||
Maria ma2ri:@ | |||||
Marie ma2ri: | |||||
Margaret mA@gr@t | |||||
Marilyn mar@lIn | |||||
Matilda ma2tIld@ | |||||
Matthew maTju: | |||||
Maurice m0rIs | |||||
Mavis meIvIs | |||||
Melissa $2 | |||||
Michael maIk@L | |||||
Michelle mI2SEl | |||||
Miguel mi:Q'El | |||||
Mohammad moUh'amId | |||||
Muhammad moUh'amId | |||||
Moira mOIr@ | |||||
Neville nEvIl | |||||
Nicholas nIk@l@s | |||||
Nicosia nIk@s'i:@ | |||||
Nigel naIdZ@L | |||||
Nguyen nu:jEn | |||||
Omar oUmA@ | |||||
Oscar 0sk3 | |||||
Ottawa 0ta2w@ | |||||
Pamela pam@l@ | |||||
Pandora $2 | |||||
Penelope p@nEl@pI2 | |||||
Phoebe fi:bi: | |||||
Rachel reItS@L | |||||
Rhys ri:s | |||||
Robert r0b3t | |||||
Roderick r0drIk | |||||
Samantha s@manT@ | |||||
Sarah se@r@ | |||||
Seamus SeIm@s | |||||
Sean SO:n | |||||
Sebastian $2 | |||||
Sheila Si:l@ | |||||
Sonia s0nj@ | |||||
Sophie soUfI2 | |||||
Stephen sti:v@n | |||||
Stewart stju:3t | |||||
Stuart stju:3t | |||||
Theresa t@ri:z@ | |||||
Thomas t0m@s | |||||
Tina ti:n@ | |||||
Tracy treIsI2 | |||||
Tricia trIS@ | |||||
Wally w0lI2 | |||||
Yvonne $2 | |||||
Zoe zoUI | |||||
Andromeda andr'0mId@ | |||||
Buchannan bju:k'an@n | |||||
Campbell kamb@l | |||||
Disney dIznI2 | |||||
Patel p@t'El | |||||
Prentice prEntIs | |||||
Reuter rOIt3 | |||||
Ubuntu u:b'u:ntu: | |||||
Yaesu jeIsu: | |||||
zhivago ZI2vA:goU | |||||
we're %wi@ | we're %wi@ | ||||
you're %jO@ | you're %jO@ | ||||
?7 you're %jU@ | |||||
?6 you're %jU@ | |||||
they're %DeI3 | they're %DeI3 | ||||
it'd %It@d | it'd %It@d | ||||
that'd %Dat@d | that'd %Dat@d | ||||
our %aU@ $nounf $only | our %aU@ $nounf $only | ||||
?3 our %aU3 $nounf $only | ?3 our %aU3 $nounf $only | ||||
your %jO@ $nounf $only | your %jO@ $nounf $only | ||||
?7 your %jU@ $nounf $only | |||||
?6 your %jU@ $nounf $only | |||||
their %De@ $nounf $only | their %De@ $nounf $only | ||||
theirs De@z | theirs De@z | ||||
_) a's (_ eIz | _) a's (_ eIz | ||||
D_) a (_ eI | D_) a (_ eI | ||||
a a | a a | ||||
_C) a (_ A: | |||||
_CC) a (_ A: | |||||
XC) a (_ A: | |||||
a (Be# eI | a (Be# eI | ||||
a (BeCo_ a | a (BeCo_ a | ||||
a (BerC a | a (BerC a | ||||
@) a (Biu 'eI | @) a (Biu 'eI | ||||
a (Bet a | a (Bet a | ||||
a (Bing E | a (Bing E | ||||
_C) a (By_ eI | |||||
_CC) a (By_ eI | |||||
XC) a (By_ eI | |||||
a (Ca_ 'A: | a (Ca_ 'A: | ||||
a (Cable 'eI | a (Cable 'eI | ||||
a (Cably 'eI | a (Cably 'eI | ||||
aa) aa a: | aa) aa a: | ||||
aar 'A@ | aar 'A@ | ||||
a (Bo_ 'A: | a (Bo_ 'A: | ||||
_C) a (ble eI | |||||
_CC) a (ble eI | |||||
XC) a (ble eI | |||||
CCC) a (ble eI | CCC) a (ble eI | ||||
_en) a (bl 'eI | _en) a (bl 'eI | ||||
_dis) a (ble 'eI | _dis) a (ble 'eI | ||||
qu) ar (t O@ | qu) ar (t O@ | ||||
ar (til %A@ | ar (til %A@ | ||||
ary (_ @rI2 | ary (_ @rI2 | ||||
_C) ary e@rI2 | |||||
_CC) ary e@rI2 | |||||
XC) ary e@rI2 | |||||
w) ar O@ | w) ar O@ | ||||
wh) ar O@ | wh) ar O@ | ||||
w) ar (r 0 | w) ar (r 0 | ||||
.group e | .group e | ||||
e E | e E | ||||
&) e (_ | &) e (_ | ||||
_C) e (_N i: | |||||
_CC) e (_N i: | |||||
_C) e (Be_ i: | |||||
_CC) e (Be_ i: | |||||
_CCC) e (Be_ i: | |||||
XC) e (_N i: | |||||
XC) e (Be_ i: | |||||
@) e (Cia_ 'i: | @) e (Cia_ 'i: | ||||
e (Bo_ 'i: | e (Bo_ 'i: | ||||
e (Boe_ 'i: | e (Boe_ 'i: | ||||
p) ean (_ 'i@n | p) ean (_ 'i@n | ||||
_l) ea (mi E | _l) ea (mi E | ||||
b) ea (n i: | b) ea (n i: | ||||
_C) ea (n_ i: | |||||
_CC) ea (n_ i: | |||||
XC) ea (n_ i: | |||||
ear i@ | ear i@ | ||||
_) ear (l 3: | _) ear (l 3: | ||||
_) ear (n 3: | _) ear (n 3: | ||||
_) er (A I2r | _) er (A I2r | ||||
_) er 3: | _) er 3: | ||||
_) err (A Er | _) err (A Er | ||||
_C) err Er | |||||
_CC) err Er | |||||
XC) err Er | |||||
erre 'e@ | erre 'e@ | ||||
erred (_ '3:d | erred (_ '3:d | ||||
er (_ 3: | er (_ 3: | ||||
m) er (c 3: | m) er (c 3: | ||||
p) er (cen 3 | p) er (cen 3 | ||||
exp) eri (en i@rI2 | exp) eri (en i@rI2 | ||||
_C) er 3: | |||||
XC) er 3: | |||||
_h) er (A Er | _h) er (A Er | ||||
_CC) er 3: | |||||
_CC) er (A Er | _CC) er (A Er | ||||
_qu) er 3: | _qu) er 3: | ||||
c) er (am I2r | c) er (am I2r | ||||
&) ere (_ 3 | &) ere (_ 3 | ||||
_C) ere (_ i@ | |||||
_CC) ere (_ i@ | |||||
XC) ere (_ i@ | |||||
sph) ere (_ i@ | sph) ere (_ i@ | ||||
c) ere (_ 'i@ | c) ere (_ 'i@ | ||||
i) ere (_ I2e@ | i) ere (_ I2e@ | ||||
&) ey (_ I2 | &) ey (_ I2 | ||||
@) ey (C@ I | @) ey (C@ I | ||||
Cv) ey (_ eI | Cv) ey (_ eI | ||||
_C) ey eI | |||||
_CC) ey eI | |||||
XC) ey eI | |||||
_ab) ey eI | _ab) ey eI | ||||
_k) ey (+ i: | _k) ey (+ i: | ||||
ey aI | ey aI | ||||
.group i | .group i | ||||
i I | i I | ||||
_) i' %aI | _) i' %aI | ||||
_C) i (_ aI | |||||
_CC) i (_ aI | |||||
XC) i (_ aI | |||||
b) i (_ aI | b) i (_ aI | ||||
c) i (_ aI | c) i (_ aI | ||||
c) is (_ Is | c) is (_ Is | ||||
h) i (_ =aI | h) i (_ =aI | ||||
&sk) i (_ =I2 | &sk) i (_ =I2 | ||||
i (CCi_ 'I | i (CCi_ 'I | ||||
_C) i (Ca_ i: | |||||
XC) i (Ca_ i: | |||||
XC) i (Co_ i: | |||||
i (Be# aI | i (Be# aI | ||||
i (Bee I | i (Bee I | ||||
i (Bel_ I | i (Bel_ I | ||||
i (Bet_ I | i (Bet_ I | ||||
@) i (Cer I | @) i (Cer I | ||||
_C) i (Cer_ aI | |||||
_CC) i (Cer_ aI | |||||
XC) i (Cer_ aI | |||||
i (ani_ I | i (ani_ I | ||||
i (ber_ aI | i (ber_ aI | ||||
i (der+_ aI | i (der+_ aI | ||||
&) i (Cent I | &) i (Cent I | ||||
&) i (Cenc I | &) i (Cenc I | ||||
_) i (Cy_ aI | _) i (Cy_ aI | ||||
_C) i (Cy_ aI | |||||
XC) i (Cy_ aI | |||||
_p) i (ty_ I | _p) i (ty_ I | ||||
_CC) i (Cy_ aI | |||||
ntell) i I | ntell) i I | ||||
_) i (a aI | _) i (a aI | ||||
_) i (b aI | _) i (b aI | ||||
p) izz (a i:t|s | p) izz (a i:t|s | ||||
.group ia | .group ia | ||||
_C) ia aI|@ | |||||
_CC) ia aI|@ | |||||
XC) ia aI|@ | |||||
&) iac (_ =Iak | &) iac (_ =Iak | ||||
C) iar aI@ | C) iar aI@ | ||||
iar (iC Iar | iar (iC Iar | ||||
r) iv (en Iv | r) iv (en Iv | ||||
r) iv (et Iv | r) iv (et Iv | ||||
_l) iv (el aIv | _l) iv (el aIv | ||||
_C) iv (el Iv | |||||
_CC) iv (el Iv | |||||
XC) iv (el Iv | |||||
_g) iv (e Iv | _g) iv (e Iv | ||||
_l) iv (e Iv | _l) iv (e Iv | ||||
r) iv (er Iv | r) iv (er Iv | ||||
dr) iv (er aIv | dr) iv (er aIv | ||||
sh) iv (er Iv | sh) iv (er Iv | ||||
v) iv (e aIv | v) iv (e aIv | ||||
_CC) iv (en Iv | |||||
_CCC) iv (en Iv | |||||
XCC) iv (en Iv | |||||
iv (or_ aIv | iv (or_ aIv | ||||
.group j | .group j | ||||
o (Bing oU | o (Bing oU | ||||
o (BiA 'oU | o (BiA 'oU | ||||
_) o (Bal oU | _) o (Bal oU | ||||
_C) o (Bal oU | |||||
_CC) o (Bal oU | |||||
XC) o (Bal oU | |||||
o (_ oU | o (_ oU | ||||
@@C) o (_ =oU | @@C) o (_ =oU | ||||
ig) o (_ oU | ig) o (_ oU | ||||
o (Ba_ 'oU | o (Ba_ 'oU | ||||
o (Beon 'oU | o (Beon 'oU | ||||
_C) o (Bus_ oU | |||||
_CC) o (Bus_ oU | |||||
XC) o (Bus_ oU | |||||
@) o (Ci_ 'oU | @) o (Ci_ 'oU | ||||
o (Co_ 'oU | o (Co_ 'oU | ||||
@) o (lo_ 0 | @) o (lo_ 0 | ||||
w) on (t 0n | w) on (t 0n | ||||
_) only oUnlI2 | _) only oUnlI2 | ||||
&) ony (_ @nI2 | &) ony (_ @nI2 | ||||
_C) ony oUnI2 | |||||
_CC) ony oUnI2 | |||||
XC) ony oUnI2 | |||||
onymous '0nIm@s | onymous '0nIm@s | ||||
.group oo | .group oo | ||||
_C) y (ph aI | _C) y (ph aI | ||||
_C) y (st I | _C) y (st I | ||||
XC) y aI | XC) y aI | ||||
_CCC) y aI | |||||
CC) y (n_ I | CC) y (n_ I | ||||
// Cr) y I2 | // Cr) y I2 | ||||
_sC) y aI | _sC) y aI |
<strong>--voices[=<language code>]</strong><br> | <strong>--voices[=<language code>]</strong><br> | ||||
<dd>Lists the available voices.<br> | <dd>Lists the available voices.<br> | ||||
If =<language code> is present then only those voices which are suitable for that language are listed.<br> | If =<language code> is present then only those voices which are suitable for that language are listed.<br> | ||||
<code>--voices=variant</code> lists the voice variants (voice modifiers). | |||||
</dl> | </dl> | ||||
<p> <hr> | <p> <hr> |
<h3>3.3 Voice Variants</h3> | <h3>3.3 Voice Variants</h3> | ||||
To make alternative voices for a language, you can make additional voice files in espeak-data/voices which contains commands to change various voice and pronunciation attributes. See <a href="voices.html">voices.html</a>. | To make alternative voices for a language, you can make additional voice files in espeak-data/voices which contains commands to change various voice and pronunciation attributes. See <a href="voices.html">voices.html</a>. | ||||
<p> | <p> | ||||
Alternatively there are some preset voice variants which can be applied to any of the language voices, by appending <code>+</code> and a number. Their effects are defined by files in <code>espeak-data/voices/!v</code>. | |||||
Alternatively there are some preset voice variants which can be applied to any of the language voices, by appending <code>+</code> and a variant name. Their effects are defined by files in <code>espeak-data/voices/!v</code>. | |||||
<p> | <p> | ||||
The variant numbers are <code> +1 +2 +3 +4 +5 </code> for male voices and <code> +11 +12 +13 +14 </code> for female voices. For example: | |||||
<pre> espeak -ven+3</pre> | |||||
The variants are <code> +m1 +m2 +m3 +m4 +m5 </code> for male voices, <code> +f1 +f2 +f3 +f4 </code> for female voices, and <code> +croak +wisper</code> for other effects. For example: | |||||
<pre> espeak -ven+m3</pre> | |||||
The available voice variants can be listed with:<br> | |||||
<pre> espeak --voices=variant</pre> | |||||
<h3>3.4 Other Languages</h3> | <h3>3.4 Other Languages</h3> | ||||
The eSpeak speech synthesizer does text to speech for the following additional langauges. | The eSpeak speech synthesizer does text to speech for the following additional langauges. | ||||
<ul> | <ul> |
gender male | gender male | ||||
// interpret English letters as 1=English words, 2=jyutping | // interpret English letters as 1=English words, 2=jyutping | ||||
dictrules 2 | |||||
dictrules 1 | |||||
words 1 |
en_wm 30 144 | en_wm 30 144 | ||||
af 38 128 | af 38 128 | ||||
cy 29 122 | cy 29 122 | ||||
de 32 123 | |||||
de 33 123 | |||||
eo 13 108 | eo 13 108 | ||||
fi 40 127 | fi 40 127 | ||||
fr 34 118 | fr 34 118 | ||||
no 28 122 | no 28 122 | ||||
is 32 121 | is 32 121 | ||||
vi 41 133 | vi 41 133 | ||||
zhy 33 125 | |||||
zhy 40 129 | |||||
sw 14 105 | sw 14 105 | ||||
3 b/b base hi ro | 3 b/b base hi ro | ||||
1 j/je base | 1 j/je base | ||||
1 j/ji base | 1 j/ji base | ||||
1 j/jo base | 1 j/jo base | ||||
1 j/_j_short de | |||||
1 j/ju base | 1 j/ju base | ||||
6 j/xj base | 6 j/xj base | ||||
1 l^/j2@ base | 1 l^/j2@ base | ||||
1 n/ni base | 1 n/ni base | ||||
1 nn/inn base | 1 nn/inn base | ||||
4 n/nj base ro | 4 n/nj base ro | ||||
3 nn/_nn base en zhy | |||||
3 nn/nn_ base en zhy | |||||
2 nn/_nn base en | |||||
2 nn/nn_ base en | |||||
1 nn/nn@ base | 1 nn/nn@ base | ||||
1 nn/nn#_ is | 1 nn/nn#_ is | ||||
1 nn/nna base | 1 nn/nna base | ||||
1 nn/nne base | 1 nn/nne base | ||||
1 nn/nni base | 1 nn/nni base | ||||
2 nn/nnj base zhy | |||||
1 nn/nnj base | |||||
1 nn/nno base | 1 nn/nno base | ||||
1 nn/nnu base | 1 nn/nnu base | ||||
1 n^/n^o base | 1 n^/n^o base | ||||
4 ufric/x2 af nl pt | 4 ufric/x2 af nl pt | ||||
1 ufric/x_hr hr | 1 ufric/x_hr hr | ||||
1 ustop/c base | 1 ustop/c base | ||||
5 ustop/k base en fr hi sw | |||||
6 ustop/k base en fr hi zhy sw | |||||
10 ustop/k_ base base2 en fi fr hi hu sk el sw | 10 ustop/k_ base base2 en fi fr hi hu sk el sw | ||||
14 ustop/ki base base2 en af fi fr hi hu sk mk is sw | |||||
11 ustop/kl base base2 en fi fr hi hu sk el sw | |||||
12 ustop/kr base base2 en fi fr hi hu sk el sw | |||||
10 ustop/k_unasp base base2 fi hi hu sk el | |||||
3 ustop/p base fr hi | |||||
15 ustop/ki base base2 en af fi fr hi hu sk mk is zhy ++ | |||||
12 ustop/kl base base2 en fi fr hi hu sk el zhy sw | |||||
14 ustop/kr base base2 en fi fr hi hu sk el zhy sw | |||||
11 ustop/k_unasp base base2 fi hi hu sk el zhy | |||||
4 ustop/p base fr hi zhy | |||||
3 ustop/p_ base fr hi | 3 ustop/p_ base fr hi | ||||
1 ustop/percus10 base | 1 ustop/percus10 base | ||||
10 ustop/pl base base2 fi fr hi hu sk la ro | 10 ustop/pl base base2 fi fr hi hu sk la ro | ||||
9 ustop/pr base base2 fi hi hu la ro | 9 ustop/pr base base2 fi hi hu la ro | ||||
9 ustop/p_unasp base base2 fi fr hi hu sk la ro | 9 ustop/p_unasp base base2 fi fr hi hu sk la ro | ||||
7 ustop/p_unasp_ base2 fi hi hu sk la ro | 7 ustop/p_unasp_ base2 fi hi hu sk la ro | ||||
6 ustop/t base en fr hi | |||||
7 ustop/t base en fr hi zhy | |||||
8 ustop/t_ base en fr hi sk el | 8 ustop/t_ base en fr hi sk el | ||||
22 ustop/t_dnt base base2 en fi hi hu pl hr ru ro vi sw | 22 ustop/t_dnt base base2 en fi hi hu pl hr ru ro vi sw | ||||
1 ustop/t_dnt2 vi | 1 ustop/t_dnt2 vi | ||||
2 vdiph/ai_5 de la | 2 vdiph/ai_5 de la | ||||
1 vdiph/ai_6 en_rp | 1 vdiph/ai_6 en_rp | ||||
5 vdiph/ai_7 en_sc is | 5 vdiph/ai_7 en_sc is | ||||
1 vdiph/ai_en en | |||||
1 vdiph/ai_en2 en | |||||
3 vdiph/au en af vi | 3 vdiph/au en af vi | ||||
1 vdiph/au# en_sc | 1 vdiph/au# en_sc | ||||
2 vdiph/au_2 en_us zhy | 2 vdiph/au_2 en_us zhy | ||||
1 vdiph/au_3 en_rp | 1 vdiph/au_3 en_rp | ||||
6 vdiph/au_4 base2 cy eo sk it is | 6 vdiph/au_4 base2 cy eo sk it is | ||||
1 vdiph/ee-e hi | 1 vdiph/ee-e hi | ||||
4 vdiph/eei en de pt vi | |||||
5 vdiph/eei en de nl pt vi | |||||
3 vdiph/eei_2 en_us eo fi | 3 vdiph/eei_2 en_us eo fi | ||||
2 vdiph/eei_3 en_rp sk | 2 vdiph/eei_3 en_rp sk | ||||
1 vdiph/eei_4 nl | |||||
3 vdiph/eeu pt vi zhy | 3 vdiph/eeu pt vi zhy | ||||
2 vdiph/eeu_2 la pt_pt | 2 vdiph/eeu_2 la pt_pt | ||||
2 vdiph/eeu_3 en_n en_wm | 2 vdiph/eeu_3 en_n en_wm | ||||
10 vowel/ii en_wm cy de fr_ca nl is zhy | 10 vowel/ii en_wm cy de fr_ca nl is zhy | ||||
3 vowel/ii# cy pl ru | 3 vowel/ii# cy pl ru | ||||
1 vowel/ii_2 la | 1 vowel/ii_2 la | ||||
7 vowel/ii_3 en_rp fi hi sk hr sv no | |||||
2 vowel/ii_4 en_rp | |||||
6 vowel/ii_en en en_n | |||||
8 vowel/ii_3 en en_rp fi hi sk hr sv no | |||||
7 vowel/ii_4 en en_n en_rp | |||||
5 vowel/@_low hi ro no | 5 vowel/@_low hi ro no | ||||
11 vowel/o base2 en en_wm de hi it la pt_pt sv | 11 vowel/o base2 en en_wm de hi it la pt_pt sv | ||||
4 vowel/o_2 cy hi hu no | 4 vowel/o_2 cy hi hu no | ||||
5 vowel/u_2 fi fr sk hr ro | 5 vowel/u_2 fi fr sk hr ro | ||||
1 vowel/u#_2 sv | 1 vowel/u#_2 sv | ||||
2 vowel/u_3 en_us ro | 2 vowel/u_3 en_us ro | ||||
1 vowel/u#_3 en_n | |||||
1 vowel/u_4 en_n | |||||
2 vowel/u#_4 en_sc | 2 vowel/u#_4 en_sc | ||||
1 vowel/u_5 sw | 1 vowel/u_5 sw | ||||
3 vowel/u_6 en_rp pt_pt | 3 vowel/u_6 en_rp pt_pt | ||||
1 vowel/uu_3 af | 1 vowel/uu_3 af | ||||
2 vowel/uu_4 fi sv | 2 vowel/uu_4 fi sv | ||||
7 vowel/uu_bck fr_ca hi hu pt no zhy | 7 vowel/uu_bck fr_ca hi hu pt no zhy | ||||
2 vowel/V en en_sc | |||||
3 vowel/V_2 af ru | |||||
1 vowel/V en_sc | |||||
4 vowel/V_2 en af ru | |||||
3 vowel/V_3 en_rp hi vi | 3 vowel/V_3 en_rp hi vi | ||||
1 vowel/V_4 en_sc | 1 vowel/V_4 en_sc | ||||
6 vowel/y en de fi hu nl zhy | 6 vowel/y en de fi hu nl zhy | ||||
1 vwl_ru/u#u ru | 1 vwl_ru/u#u ru | ||||
1 vwl_sv/r_sv3 sv | 1 vwl_sv/r_sv3 sv | ||||
1 vwl_zh/aang zhy | 1 vwl_zh/aang zhy | ||||
1 vwl_zh/ang zhy | |||||
1 vwl_zh/eng zhy | |||||
1 vwl_zh/ing zhy | |||||
1 vwl_zh/ng zhy | |||||
1 vwl_zh/oeng zhy | |||||
1 vwl_zh/ong zhy | 1 vwl_zh/ong zhy | ||||
1 vwl_zh/ung zhy | 1 vwl_zh/ung zhy | ||||
2 w/w base fr | 2 w/w base fr |
phoneme EI | phoneme EI | ||||
vowel starttype (a) endtype (i) | vowel starttype (a) endtype (i) | ||||
length 210 | length 210 | ||||
formants vdiph/eei_4 | |||||
formants vdiph/eei | |||||
endphoneme | endphoneme | ||||
phoneme Wy | phoneme Wy |
phoneme I | phoneme I | ||||
vowel starttype (i) endtype (i) | vowel starttype (i) endtype (i) | ||||
length 130 | length 130 | ||||
formants vowel/ii_en | |||||
formants vowel/ii_4 | |||||
linkout ; | linkout ; | ||||
endphoneme | endphoneme | ||||
vowel starttype (i) endtype (i) | vowel starttype (i) endtype (i) | ||||
unstressed | unstressed | ||||
length 140 | length 140 | ||||
formants vowel/ii_en | |||||
formants vowel/ii_4 | |||||
linkout ; | linkout ; | ||||
endphoneme | endphoneme | ||||
phoneme i // optional variant of [I] for end of words | phoneme i // optional variant of [I] for end of words | ||||
vowel starttype (i) endtype (i) | vowel starttype (i) endtype (i) | ||||
length 220 | |||||
formants vowel/ii_en | |||||
length 140 | |||||
formants vowel/ii_3 | |||||
linkout ; | linkout ; | ||||
endphoneme | endphoneme | ||||
phoneme V | phoneme V | ||||
vowel starttype (a) endtype (@) | vowel starttype (a) endtype (@) | ||||
length 140 | length 140 | ||||
formants vowel/V | |||||
formants vowel/V_2 | |||||
reduceto @ 0 | reduceto @ 0 | ||||
endphoneme | endphoneme | ||||
phoneme O | phoneme O | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 150 | |||||
length 200 | |||||
formants vowel/oo_en | formants vowel/oo_en | ||||
reduceto @ 0 | reduceto @ 0 | ||||
endphoneme | endphoneme | ||||
phoneme aI | phoneme aI | ||||
vowel starttype (a) endtype (i) | vowel starttype (a) endtype (i) | ||||
length 230 | length 230 | ||||
formants vdiph/ai_en | |||||
formants vdiph/ai_en2 | |||||
endphoneme | endphoneme | ||||
phoneme I | phoneme I | ||||
vowel starttype (i) endtype (i) | vowel starttype (i) endtype (i) | ||||
length 130 | length 130 | ||||
formants vowel/ii_en | |||||
formants vowel/ii_4 | |||||
linkout ; | linkout ; | ||||
endphoneme | endphoneme | ||||
phoneme i // optional variant of [I] for end of words | phoneme i // optional variant of [I] for end of words | ||||
vowel starttype (i) endtype (i) | vowel starttype (i) endtype (i) | ||||
length 220 | length 220 | ||||
formants vowel/ii_en | |||||
formants vowel/ii_4 | |||||
linkout ; | linkout ; | ||||
endphoneme | endphoneme | ||||
vowel starttype (i) endtype (i) | vowel starttype (i) endtype (i) | ||||
unstressed | unstressed | ||||
length 140 | length 140 | ||||
formants vowel/ii_en | |||||
formants vowel/ii_4 | |||||
linkout ; | linkout ; | ||||
endphoneme | endphoneme | ||||
phoneme u: | phoneme u: | ||||
vowel starttype (u) endtype (u) | vowel starttype (u) endtype (u) | ||||
length 200 | length 200 | ||||
formants vowel/u#_3 | |||||
formants vowel/u_4 | |||||
before _ vwl_en_n/u_ | before _ vwl_en_n/u_ | ||||
before l/2 vwl_en/u_L-40+l/L2_uL | before l/2 vwl_en/u_L-40+l/L2_uL | ||||
endphoneme | endphoneme |
phoneme O | phoneme O | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 140 | |||||
length 120 | |||||
formants vowel/oo | formants vowel/oo | ||||
before * DFT+40 | before * DFT+40 | ||||
endphoneme | endphoneme | ||||
beforevowel l | beforevowel l | ||||
endphoneme | endphoneme | ||||
phoneme j | |||||
liquid | |||||
palatal | |||||
length 100 | |||||
beforenotvowel j/ | |||||
formants NULL | |||||
after _ j/_j_short | |||||
lengthmod 7 | |||||
endphoneme | |||||
// This is actually the ENGLISH "rolling r". For german, we now use * in the dictionary, | // This is actually the ENGLISH "rolling r". For german, we now use * in the dictionary, | ||||
// so this phoneme will only be used in english words in german texts. | // so this phoneme will only be used in english words in german texts. |
switchvoicing dZ | switchvoicing dZ | ||||
endphoneme | endphoneme | ||||
phoneme ng // synonym for [N] | |||||
vcd vel nasal | |||||
starttype N endtype N | |||||
vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk | |||||
length 100 | |||||
formants NULL | |||||
after _ nn/_nn | |||||
before _ nn/nn_ | |||||
before (r) nn/nnj | |||||
lengthmod 8 // longer than 'n' | |||||
phoneme k | |||||
vls vel stop | |||||
vowelin f1=0 f2=2300 200 300 f3=-200 80 | |||||
vowelout f1=0 f2=2300 300 400 f3=-200 80 rms=20 | |||||
lengthmod 2 | |||||
wave ustop/k | |||||
before _ NULL | |||||
before r ustop/kr | |||||
before R ustop/kr | |||||
before @- ustop/k_unasp%70 | |||||
before l ustop/kl | |||||
before (i) ustop/ki | |||||
switchvoicing g | |||||
endphoneme | |||||
phoneme p | |||||
vls blb stop | |||||
vowelin f1=0 f2=1000 -50 -100 f3=-200 80 rms=30 | |||||
vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22 | |||||
lengthmod 2 | |||||
wave ustop/p | |||||
before _ NULL | |||||
endphoneme | endphoneme | ||||
phoneme t | |||||
vls alv stop | |||||
vowelin f1=0 f2=1700 -300 300 f3=100 80 | |||||
vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||||
wave ustop/t | |||||
before _ NULL | |||||
lengthmod 2 | |||||
endphoneme | |||||
//phoneme ng // synonym for [N] | |||||
// vcd vel nasal | |||||
// starttype N endtype N | |||||
// vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk | |||||
// after _ nn/_nn | |||||
// before _ nn/nn_ | |||||
// before (r) nn/nnj | |||||
// lengthmod 8 // longer than 'n' | |||||
//endphoneme | |||||
//==================================================== | //==================================================== | ||||
// Vowels and Diphtnongs | // Vowels and Diphtnongs | ||||
//==================================================== | //==================================================== | ||||
phoneme aa | phoneme aa | ||||
vowel starttype (a) endtype (a) | vowel starttype (a) endtype (a) | ||||
length 230 | length 230 | ||||
formants vdiph/aau_2 | formants vdiph/aau_2 | ||||
endphoneme | endphoneme | ||||
phoneme ang | |||||
vowel starttype (a) endtype (a) | |||||
length 220 | |||||
formants vwl_zh/ang | |||||
endphoneme | |||||
phoneme aang | phoneme aang | ||||
vowel starttype (a) endtype (a) | vowel starttype (a) endtype (a) | ||||
length 270 | length 270 | ||||
formants vwl_zh/aang | formants vwl_zh/aang | ||||
endphoneme | endphoneme | ||||
phoneme a | phoneme a | ||||
vowel starttype (@) endtype (@) | vowel starttype (@) endtype (@) | ||||
length 150 | length 150 | ||||
formants vdiph/au_2 | formants vdiph/au_2 | ||||
endphoneme | endphoneme | ||||
phoneme e | phoneme e | ||||
vowel starttype (e) endtype (e) | vowel starttype (e) endtype (e) | ||||
length 220 | length 220 | ||||
formants vdiph/ei | formants vdiph/ei | ||||
endphoneme | endphoneme | ||||
phoneme eng | |||||
vowel starttype (e) endtype (e) | |||||
length 220 | |||||
formants vwl_zh/eng | |||||
endphoneme | |||||
phoneme eu | phoneme eu | ||||
vowel starttype (e) endtype (u) | vowel starttype (e) endtype (u) | ||||
length 260 | length 260 | ||||
formants vdiph/eeu | formants vdiph/eeu | ||||
endphoneme | endphoneme | ||||
phoneme i | phoneme i | ||||
vowel starttype (i) endtype (i) | vowel starttype (i) endtype (i) | ||||
length 190 | length 190 | ||||
linkout ; | linkout ; | ||||
endphoneme | endphoneme | ||||
phoneme ing | |||||
vowel starttype (i) endtype (i) | |||||
length 220 | |||||
formants vwl_zh/ing | |||||
endphoneme | |||||
phoneme iu | phoneme iu | ||||
vowel starttype (i) endtype (u) | vowel starttype (i) endtype (u) | ||||
length 200 | length 200 | ||||
formants vdiph2/iu | formants vdiph2/iu | ||||
endphoneme | endphoneme | ||||
phoneme ng // synonym for [N] | |||||
vowel starttype ng endtype ng | |||||
// vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk | |||||
length 350 | |||||
formants vwl_zh/ng | |||||
beforevowel N | |||||
// before (@) vnasal/ | |||||
// before o vnasal/nn- | |||||
// lengthmod 8 | |||||
endphoneme | |||||
phoneme o | phoneme o | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
formants vowel/oo | formants vowel/oo | ||||
endphoneme | endphoneme | ||||
phoneme oeng | |||||
vowel starttype (o) endtype (e) | |||||
length 280 | |||||
formants vwl_zh/oeng | |||||
endphoneme | |||||
phoneme oi | phoneme oi | ||||
vowel starttype (o) endtype (i) | vowel starttype (o) endtype (i) | ||||
length 200 | length 200 | ||||
endphoneme | endphoneme | ||||
phoneme ong | phoneme ong | ||||
vowel starttype (o) endtype (o) | |||||
vowel starttype (o) endtype (o) | |||||
length 220 | length 220 | ||||
formants vwl_zh/ong | formants vwl_zh/ong | ||||
endphoneme | endphoneme | ||||
formants vdiph/y#y_2 | formants vdiph/y#y_2 | ||||
endphoneme | endphoneme | ||||
phoneme yu | phoneme yu | ||||
vowel starttype (u) endtype (u) | vowel starttype (u) endtype (u) | ||||
length 220 | length 220 |
[Setup] | [Setup] | ||||
AppName=eSpeak | AppName=eSpeak | ||||
AppVerName=eSpeak version 1.27 | |||||
AppVerName=eSpeak version 1.29 | |||||
DefaultDirName={pf}\eSpeak | DefaultDirName={pf}\eSpeak | ||||
DefaultGroupName=eSpeak | DefaultGroupName=eSpeak | ||||
OutputBaseFilename=setup_espeak | OutputBaseFilename=setup_espeak | ||||
Source: "docs\*"; DestDir: "{app}\docs"; Flags: recursesubdirs | Source: "docs\*"; DestDir: "{app}\docs"; Flags: recursesubdirs | ||||
Source: "command_line\*"; DestDir: "{app}\command_line" | Source: "command_line\*"; DestDir: "{app}\command_line" | ||||
Source: "Readme.txt"; DestDir: "{app}"; Flags: isreadme | Source: "Readme.txt"; DestDir: "{app}"; Flags: isreadme | ||||
Source: "License.txt"; DestDir: "{app}"; | |||||
[Registry] | [Registry] | ||||
Root: HKLM; Subkey: "Software\Microsoft\Speech\Voices\Tokens\eSpeak"; Flags: deletekey uninsdeletekey | Root: HKLM; Subkey: "Software\Microsoft\Speech\Voices\Tokens\eSpeak"; Flags: deletekey uninsdeletekey | ||||
[Languages] | [Languages] | ||||
Name: "en"; MessagesFile: "compiler:Default.isl" | Name: "en"; MessagesFile: "compiler:Default.isl" | ||||
Name: "af"; MessagesFile: "compiler:Languages\Afrikaans.isl" | Name: "af"; MessagesFile: "compiler:Languages\Afrikaans.isl" | ||||
Name: "bs"; MessagesFile: "compiler:Languages\Bosnian.isl" | |||||
Name: "cs"; MessagesFile: "compiler:Languages\Czech.isl" | Name: "cs"; MessagesFile: "compiler:Languages\Czech.isl" | ||||
Name: "de"; MessagesFile: "compiler:Languages\German.isl" | Name: "de"; MessagesFile: "compiler:Languages\German.isl" | ||||
Name: "el"; MessagesFile: "compiler:Languages\Greek.isl" | Name: "el"; MessagesFile: "compiler:Languages\Greek.isl" | ||||
[CustomMessages] | [CustomMessages] | ||||
v1=Select which voices to install | v1=Select which voices to install | ||||
v2=or press Enter to accept defaults | v2=or press Enter to accept defaults | ||||
v3=Enter voice names, eg: (for Portuguese) pt, or with a variant, eg: pt+13 | |||||
v3=Enter voice names, eg: (for Portuguese) pt, or with a variant, eg: pt+f3 | |||||
bs.v1=Odaberite jezik kojeg �elite instalirati | |||||
bs.v2=ili pritisnite Enter za prihvat zadanih. | |||||
bs.v3=Upi�ite, npr. bs (za Bosanski) ili s varjantom: bs+f3 | |||||
hr.v1=Odaberite jezik kojeg �elite instalirati | |||||
hr.v2=ili pritisnite Enter za prihvat zadanih. | |||||
hr.v3=Upi�ite, npr. hr (za Hrvatski) ili s varjantom: hr+f3 | |||||
pt.v1=Seleccione as vozes que pretende instalar | pt.v1=Seleccione as vozes que pretende instalar | ||||
pt.v2=ou precione enter para aceitar as predefinidas. | pt.v2=ou precione enter para aceitar as predefinidas. | ||||
pt.v3=Introduza os nomes das vozes, ex: (Brazil) pt (ou Portugal) pt-pt, ou com outras caracter�sticas, ex: pt+13 | |||||
pt.v3=Introduza os nomes das vozes, ex: (Brazil) pt (ou Portugal) pt-pt, ou com outras caracter�sticas, ex: pt+f3 | |||||
sr.v1=Molimo vas da odaberete glasove, koje �elite da instalirate | |||||
sr.v2=ili pritisnite Enter za instalaciju podrazumevanih glasova. | |||||
sr.v3=Da odaberetd glas, unesite ime glasa koje �elite instalirati, na primer sr, ili sr+f3 | |||||
[Code] | [Code] | ||||
$1b: Result := 'sk'; | $1b: Result := 'sk'; | ||||
$1d: Result := 'sv'; | $1d: Result := 'sv'; | ||||
$2a: Result := 'vi'; | $2a: Result := 'vi'; | ||||
$2f: Result := 'mk'; | |||||
$36: Result := 'af'; | $36: Result := 'af'; | ||||
$39: Result := 'hi'; | $39: Result := 'hi'; | ||||
$41: Result := 'sw'; | $41: Result := 'sw'; | ||||
// is there a match on the full language code? | // is there a match on the full language code? | ||||
case language of | case language of | ||||
$816: Result := 'pt-pt'; | $816: Result := 'pt-pt'; | ||||
$41a: Result := 'hr'; | |||||
$81a: Result := 'sr'; | $81a: Result := 'sr'; | ||||
$c1a: Result := 'sr'; | $c1a: Result := 'sr'; | ||||
$141a: Result := 'bs'; | |||||
end; | end; | ||||
end; | end; | ||||
case lang1 of | case lang1 of | ||||
'af': value := $436; | 'af': value := $436; | ||||
'bs': value := $141a; | |||||
'cs': value := $405; | 'cs': value := $405; | ||||
'cy': value := $452; | 'cy': value := $452; | ||||
'de': value := $407; | 'de': value := $407; | ||||
'hu': value := $40e; | 'hu': value := $40e; | ||||
'is': value := $40f; | 'is': value := $40f; | ||||
'it': value := $410; | 'it': value := $410; | ||||
'mk': value := $42f; | |||||
'nl': value := $413; | 'nl': value := $413; | ||||
'no': value := $414; | 'no': value := $414; | ||||
'pl': value := $415; | 'pl': value := $415; |
[Setup] | [Setup] | ||||
AppName=eSpeakEdit | AppName=eSpeakEdit | ||||
AppVerName=eSpeakEdit version 1.27 | |||||
AppVerName=eSpeakEdit version 1.29 | |||||
DefaultDirName={pf}\eSpeak | DefaultDirName={pf}\eSpeak | ||||
DefaultGroupName=eSpeak | DefaultGroupName=eSpeak | ||||
OutputBaseFilename=setup_espeakedit | OutputBaseFilename=setup_espeakedit | ||||
Source: "espeakedit\*"; DestDir: "{app}\espeakedit"; Flags: recursesubdirs | Source: "espeakedit\*"; DestDir: "{app}\espeakedit"; Flags: recursesubdirs | ||||
Source: "phsource\*"; DestDir: "{app}\phsource"; Flags: recursesubdirs | Source: "phsource\*"; DestDir: "{app}\phsource"; Flags: recursesubdirs | ||||
Source: "docs\*"; DestDir: "{app}\docs"; Flags: recursesubdirs | Source: "docs\*"; DestDir: "{app}\docs"; Flags: recursesubdirs | ||||
Source: "License.txt"; DestDir: "{app}"; | |||||
;Source: "Readme.txt"; DestDir: "{app}"; Flags: isreadme | ;Source: "Readme.txt"; DestDir: "{app}"; Flags: isreadme | ||||
[Languages] | [Languages] | ||||
Name: "en"; MessagesFile: "compiler:Default.isl" | Name: "en"; MessagesFile: "compiler:Default.isl" | ||||
Name: "af"; MessagesFile: "compiler:Languages\Afrikaans.isl" | Name: "af"; MessagesFile: "compiler:Languages\Afrikaans.isl" | ||||
Name: "bs"; MessagesFile: "compiler:Languages\Bosnian.isl" | |||||
Name: "cs"; MessagesFile: "compiler:Languages\Czech.isl" | Name: "cs"; MessagesFile: "compiler:Languages\Czech.isl" | ||||
Name: "de"; MessagesFile: "compiler:Languages\German.isl" | Name: "de"; MessagesFile: "compiler:Languages\German.isl" | ||||
Name: "el"; MessagesFile: "compiler:Languages\Greek.isl" | Name: "el"; MessagesFile: "compiler:Languages\Greek.isl" |
extern void FindPhonemesUsed(void); | extern void FindPhonemesUsed(void); | ||||
extern void DrawEnvelopes(); | extern void DrawEnvelopes(); | ||||
extern int CompileDictionary(const char *dsource, const char *dict_name, FILE *log, char *fname); | extern int CompileDictionary(const char *dsource, const char *dict_name, FILE *log, char *fname); | ||||
extern char voice_name[]; | |||||
static int markers_used[8]; | static int markers_used[8]; | ||||
return(_T(" No dictionaries")); | return(_T(" No dictionaries")); | ||||
} | } | ||||
strcpy(save_voice_name,voice_name); | |||||
strcpy(save_voice_name,voice_name2); | |||||
sprintf(fname_log,"%s%s",path_dsource,"dict_log"); | sprintf(fname_log,"%s%s",path_dsource,"dict_log"); | ||||
log = fopen(fname_log,"w"); | log = fopen(fname_log,"w"); | ||||
fclose(f_phcontents); | fclose(f_phcontents); | ||||
LoadPhData(); | LoadPhData(); | ||||
LoadVoice(voice_name,0); | |||||
LoadVoice(voice_name2,0); | |||||
Report(); | Report(); | ||||
DrawEnvelopes(); | DrawEnvelopes(); | ||||
extern void MakeWordFreqList(); | extern void MakeWordFreqList(); | ||||
extern const char *dict_name; | extern const char *dict_name; | ||||
extern char voice_name[]; | |||||
MyFrame *myframe = NULL; | MyFrame *myframe = NULL; | ||||
SpectDisplay *currentcanvas = NULL; | SpectDisplay *currentcanvas = NULL; | ||||
EVT_MENU(MENU_SPEAK_STOP, MyFrame::OnSpeak) | EVT_MENU(MENU_SPEAK_STOP, MyFrame::OnSpeak) | ||||
EVT_MENU(MENU_SPEAK_PAUSE, MyFrame::OnSpeak) | EVT_MENU(MENU_SPEAK_PAUSE, MyFrame::OnSpeak) | ||||
EVT_MENU(MENU_SPEAK_VOICE, MyFrame::OnSpeak) | EVT_MENU(MENU_SPEAK_VOICE, MyFrame::OnSpeak) | ||||
EVT_MENU(MENU_SPEAK_VOICE_VARIANT, MyFrame::OnSpeak) | |||||
EVT_MENU(MENU_LOAD_WAV, MyFrame::OnTools) | EVT_MENU(MENU_LOAD_WAV, MyFrame::OnTools) | ||||
EVT_MENU(MENU_VOWELCHART1, MyFrame::OnTools) | EVT_MENU(MENU_VOWELCHART1, MyFrame::OnTools) | ||||
EVT_MENU(MENU_VOWELCHART2, MyFrame::OnTools) | EVT_MENU(MENU_VOWELCHART2, MyFrame::OnTools) | ||||
// if(LoadVoice(voice_name,0) == NULL) | // if(LoadVoice(voice_name,0) == NULL) | ||||
if(SetVoiceByName(voice_name) != EE_OK) | |||||
if(SetVoiceByName(voice_name2) != EE_OK) | |||||
{ | { | ||||
if(error_flag==0) | if(error_flag==0) | ||||
wxLogError(_T("Failed to load voice data")); | wxLogError(_T("Failed to load voice data")); | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
SetVoiceTitle(voice_name); | |||||
SetVoiceTitle(voice_name2); | |||||
} | } | ||||
WavegenSetVoice(voice); | WavegenSetVoice(voice); | ||||
break; | break; | ||||
case MENU_SPEAK_VOICE: | case MENU_SPEAK_VOICE: | ||||
transldlg->ReadVoice(); | |||||
// if(voicedlg != NULL) | |||||
// voicedlg->WriteParams(); | |||||
SetVoiceTitle(voice_name); | |||||
transldlg->ReadVoice(0); | |||||
SetVoiceTitle(voice_name2); | |||||
break; | |||||
case MENU_SPEAK_VOICE_VARIANT: | |||||
transldlg->ReadVoice(1); | |||||
SetVoiceTitle(voice_name2); | |||||
break; | break; | ||||
} | } | ||||
} | } |
extern int gui_flag; | extern int gui_flag; | ||||
extern char *WavFileName(); | extern char *WavFileName(); | ||||
extern char voice_name2[40]; | |||||
class SpectDisplay; | class SpectDisplay; | ||||
void OnKey(wxKeyEvent& event); | void OnKey(wxKeyEvent& event); | ||||
void SpeakFile(void); | void SpeakFile(void); | ||||
void ReadVoice(void); | |||||
void ReadVoice(int variant); | |||||
void OnCommand(wxCommandEvent& event); | void OnCommand(wxCommandEvent& event); | ||||
private: | private: | ||||
MENU_SPEAK_PAUSE, | MENU_SPEAK_PAUSE, | ||||
MENU_SPEAK_STOP, | MENU_SPEAK_STOP, | ||||
MENU_SPEAK_VOICE, | MENU_SPEAK_VOICE, | ||||
MENU_SPEAK_VOICE_VARIANT, | |||||
MENU_LOAD_WAV, | MENU_LOAD_WAV, | ||||
MENU_VOWELCHART, | MENU_VOWELCHART, |
// VOICE MENU | // VOICE MENU | ||||
voice_menu = new wxMenu; | voice_menu = new wxMenu; | ||||
voice_menu->Append(MENU_SPEAK_VOICE, _("Select &Voice")); | voice_menu->Append(MENU_SPEAK_VOICE, _("Select &Voice")); | ||||
voice_menu->Append(MENU_SPEAK_VOICE_VARIANT, _("Select Voice Va&riant")); | |||||
// DATA MENU | // DATA MENU | ||||
data_menu = new wxMenu; | data_menu = new wxMenu; |
extern int GetNumeric(wxTextCtrl *t); | extern int GetNumeric(wxTextCtrl *t); | ||||
extern void SetNumeric(wxTextCtrl *t, int value); | extern void SetNumeric(wxTextCtrl *t, int value); | ||||
extern int samplerate; | extern int samplerate; | ||||
extern char voice_name[40]; | |||||
wxString path_spectload; | wxString path_spectload; | ||||
wxString path_spectload2; | wxString path_spectload2; | ||||
int option_speed=160; | int option_speed=160; | ||||
char path_dsource[sizeof(path_home)+20]; | char path_dsource[sizeof(path_home)+20]; | ||||
char voice_name2[40]; | |||||
BEGIN_EVENT_TABLE(Options, wxDialog) | BEGIN_EVENT_TABLE(Options, wxDialog) | ||||
EVT_BUTTON(wxID_SAVE,Options::OnCommand) | EVT_BUTTON(wxID_SAVE,Options::OnCommand) | ||||
pConfig->Read(_T("/wavepath"),&path_wave,wxEmptyString); | pConfig->Read(_T("/wavepath"),&path_wave,wxEmptyString); | ||||
pConfig->Read(_T("/speechpath"),&path_speech,wxEmptyString); | pConfig->Read(_T("/speechpath"),&path_speech,wxEmptyString); | ||||
pConfig->Read(_T("/voicename"),&string,wxEmptyString); | pConfig->Read(_T("/voicename"),&string,wxEmptyString); | ||||
strcpy(voice_name,string.mb_str(wxConvLocal)); | |||||
strcpy(voice_name2,string.mb_str(wxConvLocal)); | |||||
pConfig->Read(_T("/phsource"),&path_phsource,basedir+_T("/phsource")); | pConfig->Read(_T("/phsource"),&path_phsource,basedir+_T("/phsource")); | ||||
pConfig->Read(_T("/phfile"),&path_phfile,path_phsource+_T("/phonemes")); | pConfig->Read(_T("/phfile"),&path_phfile,path_phsource+_T("/phonemes")); | ||||
pConfig->Read(_T("/dictsource"),&path_dictsource,basedir+_T("/dictsource")); | pConfig->Read(_T("/dictsource"),&path_dictsource,basedir+_T("/dictsource")); | ||||
pConfig->Write(_T("/pitchpath"),path_pitches); | pConfig->Write(_T("/pitchpath"),path_pitches); | ||||
pConfig->Write(_T("/wavepath"),path_wave); | pConfig->Write(_T("/wavepath"),path_wave); | ||||
pConfig->Write(_T("/speechpath"),path_speech); | pConfig->Write(_T("/speechpath"),path_speech); | ||||
pConfig->Write(_T("/voicename"),wxString(voice_name,wxConvLocal)); | |||||
pConfig->Write(_T("/voicename"),wxString(voice_name2,wxConvLocal)); | |||||
pConfig->Write(_T("/phsource"),path_phsource); | pConfig->Write(_T("/phsource"),path_phsource); | ||||
pConfig->Write(_T("/phfile"),path_phfile); | pConfig->Write(_T("/phfile"),path_phfile); | ||||
pConfig->Write(_T("/dictsource"),path_dictsource); | pConfig->Write(_T("/dictsource"),path_dictsource); |
int pk; | int pk; | ||||
char voice_name1[40]; | char voice_name1[40]; | ||||
strcpy(voice_name1, voice_name); // remember current voice name | |||||
strcpy(voice_name1, voice_name2); // remember current voice name | |||||
if(LoadVoice(path_modifiervoice.mb_str(wxConvLocal),0x13) == NULL) | if(LoadVoice(path_modifiervoice.mb_str(wxConvLocal),0x13) == NULL) | ||||
{ | { |
#include "translate.h" | #include "translate.h" | ||||
#include "wave.h" | #include "wave.h" | ||||
const char *version_string = "1.28.07 21.Aug.07"; | |||||
const int version_phdata = 0x012801; | |||||
const char *version_string = "1.29 27.Aug.07"; | |||||
const int version_phdata = 0x012901; | |||||
int option_device_number = -1; | int option_device_number = -1; | ||||
tr->langopts.length_mods0 = tr->langopts.length_mods; // don't lengthen vowels in the last syllable | tr->langopts.length_mods0 = tr->langopts.length_mods; // don't lengthen vowels in the last syllable | ||||
tr->langopts.tone_numbers = 9; | tr->langopts.tone_numbers = 9; | ||||
tr->langopts.ideographs = 1; | tr->langopts.ideographs = 1; | ||||
tr->langopts.word_gap = 0x4; // length of a final vowel is less dependent on the next consonant | |||||
tr->langopts.word_gap = 0x5; // length of a final vowel is less dependent on the next consonant, don't merge consonant with next word | |||||
} | } | ||||
break; | break; | ||||
void TranslDlg::ReadVoice() | |||||
{//======================== | |||||
void TranslDlg::ReadVoice(int variant) | |||||
{//=================================== | |||||
wxString path; | wxString path; | ||||
wxString filename; | wxString filename; | ||||
char *p; | |||||
char vname[40]; | |||||
char fname[sizeof(path_home)+10]; | char fname[sizeof(path_home)+10]; | ||||
sprintf(fname,"%s/voices",path_home); | |||||
path = wxFileSelector(_T("Load voice"),wxString(fname,wxConvLocal),_T(""),_T(""),_T("*"),wxOPEN); | |||||
if(path.IsEmpty()) | |||||
return; | |||||
if(variant) | |||||
{ | |||||
// remove variant from the previous voice name | |||||
if((p = strchr(voice_name2,'+')) != NULL) | |||||
*p = 0; | |||||
filename = path.Mid(strlen(fname)+1); | |||||
strcpy(fname,filename.mb_str(wxConvLocal)); | |||||
sprintf(fname,"%s/voices/!v",path_home); | |||||
path = wxFileSelector(_T("Load voice variant"),wxString(fname,wxConvLocal),_T(""),_T(""),_T("*"),wxOPEN); | |||||
if(path.IsEmpty()) | |||||
{ | |||||
strcpy(fname,voice_name2); | |||||
} | |||||
else | |||||
{ | |||||
filename = path.Mid(strlen(fname)+1); | |||||
strcpy(vname,filename.mb_str(wxConvLocal)); | |||||
sprintf(fname,"%s+%s",voice_name2,vname); | |||||
} | |||||
} | |||||
else | |||||
{ | |||||
sprintf(fname,"%s/voices",path_home); | |||||
path = wxFileSelector(_T("Load voice"),wxString(fname,wxConvLocal),_T(""),_T(""),_T("*"),wxOPEN); | |||||
if(path.IsEmpty()) | |||||
return; | |||||
filename = path.Mid(strlen(fname)+1); | |||||
strcpy(fname,filename.mb_str(wxConvLocal)); | |||||
} | |||||
if(SetVoiceByName(fname) != EE_OK) | if(SetVoiceByName(fname) != EE_OK) | ||||
{ | { | ||||
wxLogError(_T("Failed to load voice data")); | wxLogError(_T("Failed to load voice data")); | ||||
} | } | ||||
else | |||||
{ | |||||
strcpy(voice_name2,fname); | |||||
} | |||||
WavegenSetVoice(voice); | WavegenSetVoice(voice); | ||||
} | } | ||||
espeak_VOICE *voice_selected = NULL; | espeak_VOICE *voice_selected = NULL; | ||||
espeak_VOICE *first_voice = NULL; | espeak_VOICE *first_voice = NULL; | ||||
char voice_name[40]; | |||||
if(!tone_only) | if(!tone_only) | ||||
{ | { | ||||
translator = new_translator; | translator = new_translator; | ||||
strcpy(voice_name,voicename); | |||||
} | } | ||||
// relative lengths of different stress syllables | // relative lengths of different stress syllables | ||||
if((ix = v2->score - v1->score) != 0) | if((ix = v2->score - v1->score) != 0) | ||||
return(ix); | return(ix); | ||||
return(strcmp(v2->name,v1->name)); | |||||
return(strcmp(v1->name,v2->name)); | |||||
} | } | ||||
{//======================================================================== | {//======================================================================== | ||||
#ifndef PLATFORM_RISCOS | #ifndef PLATFORM_RISCOS | ||||
int ix; | int ix; | ||||
int j; | |||||
espeak_VOICE *v; | |||||
static espeak_VOICE *voices[N_VOICES_LIST]; | static espeak_VOICE *voices[N_VOICES_LIST]; | ||||
char selected_voice_id[80]; | char selected_voice_id[80]; | ||||
char path_voices[sizeof(path_home)+12]; | char path_voices[sizeof(path_home)+12]; | ||||
{ | { | ||||
// select the voices which match the voice_spec, and sort them by preference | // select the voices which match the voice_spec, and sort them by preference | ||||
SetVoiceScores(voice_spec,voices,1); | SetVoiceScores(voice_spec,voices,1); | ||||
return((const espeak_VOICE **)voices); | |||||
} | } | ||||
else | |||||
{ | |||||
// omit variant voices | |||||
j = 0; | |||||
for(ix=0; (v = voices_list[ix]) != NULL; ix++) | |||||
{ | |||||
if((v->languages[0] != 0) && (strcmp(&v->languages[1],"variant") != 0)) | |||||
{ | |||||
voices[j++] = v; | |||||
} | |||||
} | |||||
voices[j] = NULL; | |||||
} | |||||
return((const espeak_VOICE **)voices); | |||||
#endif | #endif | ||||
return((const espeak_VOICE **)voices_list); | return((const espeak_VOICE **)voices_list); | ||||
} // end of espeak_ListVoices | } // end of espeak_ListVoices |
/* Read a file of vowel symbols and f1,f2 formants, and produce a vowel diagram | /* Read a file of vowel symbols and f1,f2 formants, and produce a vowel diagram | ||||
*/ | */ | ||||
extern wxString path_phsource; | extern wxString path_phsource; | ||||
extern char voice_name[]; | |||||
extern char *spects_data; | extern char *spects_data; | ||||
extern int n_phoneme_tables; | extern int n_phoneme_tables; | ||||
VowelChart(1,fname); // draw the vowel chart | VowelChart(1,fname); // draw the vowel chart | ||||
} | } | ||||
LoadVoice(voice_name,0); // reset the original phoneme table | |||||
LoadVoice(voice_name2,0); // reset the original phoneme table | |||||
delete progress; | delete progress; | ||||
} | } | ||||