mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-10-31 05:35:35 +00:00
[1.46.49]
Fix: character names sometimes not spoken correctly if they are from another language's dictionary. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@315 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
+6
-3
@@ -341,10 +341,13 @@ void MakePhonemeList(Translator *tr, int post_pause, int start_sentence)
|
||||
ph = phoneme_tab[plist3->phcode];
|
||||
plist3[0].ph = ph;
|
||||
|
||||
if((plist3->phcode == phonSWITCH) && !(plist3->synthflags & SFLAG_EMBEDDED)) // ?? phonSWITCH can't have SFLAG_EMBEDDED ??
|
||||
if(plist3->phcode == phonSWITCH)
|
||||
{
|
||||
if((plist3[1].phcode == phonSWITCH) || ((plist3[1].type == phPAUSE) && (plist3[2].phcode == phonSWITCH)))
|
||||
continue; // next phoneme is also a phonSWITCH, so ignore
|
||||
if(!(plist3->synthflags & SFLAG_EMBEDDED)) // ?? phonSWITCH can't have SFLAG_EMBEDDED ??
|
||||
{
|
||||
if((plist3[1].phcode == phonSWITCH) || ((plist3[1].type == phPAUSE) && (plist3[2].phcode == phonSWITCH)))
|
||||
continue; // next phoneme is also a phonSWITCH, so ignore
|
||||
}
|
||||
|
||||
// change phoneme table
|
||||
SelectPhonemeTable(plist3->tone_ph);
|
||||
|
||||
+1
-1
@@ -643,7 +643,7 @@ static const char *LookupCharName(Translator *tr, int c, int only)
|
||||
}
|
||||
}
|
||||
|
||||
if((only==0) && (phonemes[0] == 0) && (tr->translator_name != L('e','n')))
|
||||
if((only==0) && ((phonemes[0] == 0) || (phonemes[0] == phonSWITCH)) && (tr->translator_name != L('e','n')))
|
||||
{
|
||||
// not found, try English
|
||||
SetTranslator2("en");
|
||||
|
||||
Reference in New Issue
Block a user