mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-11-02 22:07:12 +00:00
[1.26.05] Fix count of upper-case letters in a word to consider multibyte characters.
Mbrola translations, option to not match across a word boundary. Mbrola translations, allow check of lengthen indicator [:]. espeakedit, add operation to apply a voice's formants modifications to a keyframe. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@47 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
@@ -196,6 +196,7 @@ int GetMbrName(PHONEME_LIST *plist, PHONEME_TAB *ph, PHONEME_TAB *ph_prev, PHONE
|
||||
// bit 0 skip the next phoneme
|
||||
// bit 1 match this and Previous phoneme
|
||||
// bit 2 only at the start of a word
|
||||
// bit 4 don't match two phonemes across a word boundary
|
||||
|
||||
pr = mbrola_tab;
|
||||
while(pr->name != 0)
|
||||
@@ -205,9 +206,17 @@ int GetMbrName(PHONEME_LIST *plist, PHONEME_TAB *ph, PHONEME_TAB *ph_prev, PHONE
|
||||
if(pr->next_phoneme == 0)
|
||||
found = 1;
|
||||
else
|
||||
if((pr->next_phoneme == ':') && (plist->synthflags & SFLAG_LENGTHEN))
|
||||
{
|
||||
found = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(pr->control & 2)
|
||||
other_ph = ph_prev;
|
||||
else
|
||||
if((pr->control & 8) && ((plist+1)->newword))
|
||||
other_ph = phoneme_tab[phPAUSE]; // don't match the next phoneme over a word boundary
|
||||
else
|
||||
other_ph = ph_next;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user