git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@108 d46cf337-b52f-0410-862d-fd96e6ae7743master
| @@ -188,6 +188,7 @@ usa $abbrev | |||
| utc $abbrev | |||
| u.s ju:'Es | |||
| wwii dVb@Lju:dVb@Lju:t'u: | |||
| xxx $abbrev // not roman 30 | |||
| xy $abbrev | |||
| @@ -1426,7 +1427,8 @@ project $verb | |||
| promenade pr0m@n'A:d | |||
| pronoun proUnaUn | |||
| propaganda pr0p@g'and@ | |||
| protegee pr0t@dZeI | |||
| protege pr0t@ZeI | |||
| protegee pr0t@ZeI | |||
| protest proUtEst $onlys | |||
| protest $verb | |||
| protocol proUt@k0l | |||
| @@ -1533,7 +1533,7 @@ | |||
| deter dI2t3: | |||
| deter (i dI2ti@ | |||
| detest dI2tEst | |||
| de (th d%i: | |||
| _) de (th d%i: | |||
| de (ton dE | |||
| de (tou di: | |||
| de (tox d%i: | |||
| @@ -39,7 +39,7 @@ _1 'e:n | |||
| _2 t'u: | |||
| _3 t@-*'e: | |||
| _4 f'i:*E | |||
| _5 f'e:m | |||
| _5 f'Em | |||
| _6 s'Eks | |||
| _7 S'u-: | |||
| _8 'Ot:@2 | |||
| @@ -1529,7 +1529,7 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
| return(CLAUSE_COLON); | |||
| case SSML_SENTENCE: | |||
| if(ssml_sp->tag_type == SSML_SENTENCE) | |||
| if((ssml_sp != NULL) && (ssml_sp->tag_type == SSML_SENTENCE)) | |||
| { | |||
| // new sentence implies end-of-sentence | |||
| voice_change_flag = GetVoiceAttributes(px, SSML_SENTENCE+SSML_CLOSE); | |||
| @@ -1539,10 +1539,18 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
| case SSML_PARAGRAPH: | |||
| if((ssml_sp->tag_type == SSML_SENTENCE) || (ssml_sp->tag_type == SSML_PARAGRAPH)) | |||
| if(ssml_sp != NULL) | |||
| { | |||
| // new paragraph implies end-of-sentence or end-of-paragraph | |||
| voice_change_flag = GetVoiceAttributes(px, SSML_SENTENCE+SSML_CLOSE); | |||
| if(ssml_sp->tag_type == SSML_SENTENCE) | |||
| { | |||
| // new paragraph implies end-of-sentence or end-of-paragraph | |||
| voice_change_flag = GetVoiceAttributes(px, SSML_SENTENCE+SSML_CLOSE); | |||
| } | |||
| if(ssml_sp->tag_type == SSML_PARAGRAPH) | |||
| { | |||
| // new paragraph implies end-of-sentence or end-of-paragraph | |||
| voice_change_flag |= GetVoiceAttributes(px, SSML_PARAGRAPH+SSML_CLOSE); | |||
| } | |||
| } | |||
| voice_change_flag |= GetVoiceAttributes(px, tag_type); | |||
| return(CLAUSE_PARAGRAPH + voice_change_flag); | |||
| @@ -35,7 +35,7 @@ | |||
| #include "translate.h" | |||
| #include "wave.h" | |||
| const char *version_string = "1.29.21 21.Nov.07"; | |||
| const char *version_string = "1.29.22 26.Nov.07"; | |||
| const int version_phdata = 0x012901; | |||
| int option_device_number = -1; | |||
| @@ -1485,7 +1485,8 @@ espeak_ERROR SetVoiceByName(const char *name) | |||
| variant_name = ExtractVoiceVariantName(buf,0); | |||
| memset(&voice_selector,0,sizeof(voice_selector)); | |||
| voice_selector.name = buf; | |||
| // voice_selector.name = buf; | |||
| voice_selector.name = name; // include variant name in voice stack ?? | |||
| // first check for a voice with this filename | |||
| // This may avoid the need to call espeak_ListVoices(). | |||