Browse Source

Add KlattFiniSP

speechPlayer_terminate was never called without calling
speechPlayer_initialize right after, so there would always be a FrameManager
laying behind.
master
Samuel Thibault 3 years ago
parent
commit
51af5a4155

+ 2
- 0
src/libespeak-ng/compiledata.c View File

@@ -2631,6 +2631,8 @@ espeak_ng_CompilePhonemeDataPath(long rate,

fclose(f_report);

WavegenFini();

if (resample_count > 0) {
fprintf(f_errors, "\n%d WAV files resampled to %d Hz\n", resample_count, samplerate_native);
fprintf(log, "Compiled phonemes: %d errors, %d files resampled to %d Hz.\n", error_count, resample_count, samplerate_native);

+ 7
- 0
src/libespeak-ng/klatt.c View File

@@ -467,6 +467,13 @@ void KlattReset(int control)
}
}

void KlattFini(void)
{
#ifdef INCLUDE_SPEECHPLAYER
KlattFiniSP();
#endif
}

/*
function FRAME_INIT


+ 1
- 0
src/libespeak-ng/klatt.h View File

@@ -179,6 +179,7 @@ typedef struct {
} klatt_peaks_t;

void KlattInit(void);
void KlattFini(void);
void KlattReset(int control);
int Wavegen_Klatt(int length, int resume, frame_t *fr1, frame_t *fr2, WGEN_DATA *wdata, voice_t *wvoice);


+ 6
- 2
src/libespeak-ng/sPlayer.c View File

@@ -97,9 +97,13 @@ void KlattInitSP() {
speechPlayerHandle=speechPlayer_initialize(22050);
}

void KlattResetSP() {
void KlattFiniSP() {
speechPlayer_terminate(speechPlayerHandle);
speechPlayerHandle=speechPlayer_initialize(22050);
}

void KlattResetSP() {
KlattFiniSP();
KlattInitSP();
}

int Wavegen_KlattSP(WGEN_DATA *wdata, voice_t *wvoice, int length, int resume, frame_t *fr1, frame_t *fr2){

+ 1
- 0
src/libespeak-ng/sPlayer.h View File

@@ -11,6 +11,7 @@ extern "C" {

void KlattInitSP(void);
void KlattResetSP(void);
void KlattFiniSP(void);
int Wavegen_KlattSP(WGEN_DATA *wdata, voice_t *wvoice, int length, int resume, frame_t *fr1, frame_t *fr2);

#ifdef __cplusplus

+ 7
- 0
src/libespeak-ng/wavegen.c View File

@@ -364,6 +364,13 @@ void WavegenInit(int rate, int wavemult_fact)
#endif
}

void WavegenFini(void)
{
#ifdef INCLUDE_KLATT
KlattFini();
#endif
}

int GetAmplitude(void)
{
int amp;

+ 2
- 0
src/libespeak-ng/wavegen.h View File

@@ -60,6 +60,8 @@ void SetPitch2(voice_t *voice,
void WavegenInit(int rate,
int wavemult_fact);

void WavegenFini(void);


int WavegenFill(void);
void WavegenSetVoice(voice_t *v);

Loading…
Cancel
Save