mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-11-02 14:04:27 +00:00
[1.30.05]
Fix an error where vowels start too loud (too strong attack). Added command-line option --compile-debug, which is like --compile but it includes source line information from the *_rules file, which is displayed with the -X option. espeakedit: Added Compile->Compile_dictionary(debug), Fixed <emphasis> which was broken in the previous version(s). <emphasis> now reduces the previous stressed syllable to secondary stress. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@119 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
+13
-4
@@ -700,7 +700,7 @@ if((wmark > 0) && (wmark < 8))
|
||||
}
|
||||
}
|
||||
|
||||
if((wflags & FLAG_ALL_UPPER) && (word_length > 1) && (clause_lower_count > 3) && iswalpha(first_char))
|
||||
if((wflags & FLAG_ALL_UPPER) && (word_length > 1)&& iswalpha(first_char))
|
||||
{
|
||||
if((option_tone_flags & OPTION_EMPHASIZE_ALLCAPS) && !(dictionary_flags[0] & FLAG_ABBREV))
|
||||
{
|
||||
@@ -708,7 +708,7 @@ if((wmark > 0) && (wmark < 8))
|
||||
emphasize_allcaps = FLAG_EMPHASIZED;
|
||||
}
|
||||
else
|
||||
if(!found && !(dictionary_flags[0] & FLAG_SKIPWORDS) && (word_length<4) && (clause_upper_count <= clause_lower_count))
|
||||
if(!found && !(dictionary_flags[0] & FLAG_SKIPWORDS) && (word_length<4) && (clause_lower_count > 3) && (clause_upper_count <= clause_lower_count))
|
||||
{
|
||||
// An upper case word in a lower case clause. This could be an abbreviation.
|
||||
spell_word = 1;
|
||||
@@ -1023,12 +1023,21 @@ strcpy(phonemes2,phonemes);
|
||||
strcat(word_phonemes,end_phonemes);
|
||||
}
|
||||
|
||||
if(wflags & FLAG_LAST_WORD)
|
||||
{
|
||||
// don't use $brk pause before the last word of a sentence
|
||||
// (but allow it for emphasis, see below
|
||||
dictionary_flags[0] &= ~FLAG_PAUSE1;
|
||||
}
|
||||
|
||||
if(wflags & FLAG_EMPHASIZED)
|
||||
{
|
||||
// A word is indicated in the source text as stressed
|
||||
// Give it stress level 6 (for the intonation module)
|
||||
ChangeWordStress(this,word_phonemes,6);
|
||||
dictionary_flags[0] |= FLAG_PAUSE1; // precede by short pause
|
||||
|
||||
// if(!(wflags & FLAG_LAST_WORD)) // ?? omit pre-pause if it's the last word in the sentence?
|
||||
dictionary_flags[0] |= FLAG_PAUSE1; // precede by short pause
|
||||
}
|
||||
else
|
||||
if(wtab[dictionary_skipwords].flags & FLAG_LAST_WORD)
|
||||
@@ -1335,7 +1344,7 @@ int Translator::TranslateWord2(char *word, WORD_TAB *wtab, int pre_pause, int ne
|
||||
}
|
||||
}
|
||||
|
||||
if(!(word_flags & FLAG_LAST_WORD) && !(word_flags & FLAG_HYPHEN))
|
||||
if(!(word_flags & FLAG_HYPHEN))
|
||||
{
|
||||
if(flags & FLAG_PAUSE1)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user