mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-11-01 13:54:20 +00:00
[1.47.03d]
Lang=ml, change aspirated voiced consonants. Lang=ko, define temporary replacements for undefined consonant phonemes. Lang=bn, fix numbers. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@334 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
+19
-1
@@ -1426,7 +1426,7 @@ int Generate(PHONEME_LIST *phoneme_list, int *n_ph, int resume)
|
||||
|
||||
EndAmplitude();
|
||||
|
||||
if(p->prepause > 0)
|
||||
if((p->prepause > 0) && !(p->ph->phflags & phPREVOICE))
|
||||
DoPause(p->prepause,1);
|
||||
|
||||
done_phoneme_marker = 0;
|
||||
@@ -1455,6 +1455,7 @@ int Generate(PHONEME_LIST *phoneme_list, int *n_ph, int resume)
|
||||
|
||||
case phSTOP:
|
||||
released = 0;
|
||||
ph = p->ph;
|
||||
if(next->type==phVOWEL)
|
||||
{
|
||||
released = 1;
|
||||
@@ -1468,6 +1469,23 @@ int Generate(PHONEME_LIST *phoneme_list, int *n_ph, int resume)
|
||||
if(released == 0)
|
||||
p->synthflags |= SFLAG_NEXT_PAUSE;
|
||||
|
||||
if(ph->phflags & phPREVOICE)
|
||||
{
|
||||
// a period of voicing before the release
|
||||
memset(&fmtp, 0, sizeof(fmtp));
|
||||
InterpretPhoneme(NULL, 0x01, p, &phdata, &worddata);
|
||||
fmtp.fmt_addr = phdata.sound_addr[pd_FMT];
|
||||
fmtp.fmt_amp = phdata.sound_param[pd_FMT];
|
||||
|
||||
if(last_pitch_cmd < 0)
|
||||
{
|
||||
DoAmplitude(next->amp,NULL);
|
||||
DoPitch(envelope_data[p->env],next->pitch1,next->pitch2);
|
||||
}
|
||||
|
||||
DoSpect2(ph, 0, &fmtp, p, 0);
|
||||
}
|
||||
|
||||
InterpretPhoneme(NULL, 0, p, &phdata, &worddata);
|
||||
phdata.pd_control |= pd_DONTLENGTHEN;
|
||||
DoSample3(&phdata, 0, 0);
|
||||
|
||||
Reference in New Issue
Block a user