From 09cdf8ce66bc328fb13c107a66278ef47d0e3732 Mon Sep 17 00:00:00 2001 From: Yury Popov Date: Tue, 15 Nov 2022 09:59:06 +0300 Subject: [PATCH] Add public API to seed PRNG --- src/include/espeak-ng/espeak_ng.h | 3 +++ src/libespeak-ng/common.c | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/src/include/espeak-ng/espeak_ng.h b/src/include/espeak-ng/espeak_ng.h index 0bf2309b..81988e48 100644 --- a/src/include/espeak-ng/espeak_ng.h +++ b/src/include/espeak-ng/espeak_ng.h @@ -212,6 +212,9 @@ espeak_ng_SetOutputHooks(espeak_ng_OUTPUT_HOOKS* hooks); ESPEAK_NG_API espeak_ng_STATUS espeak_ng_SetConstF0(int f0); +ESPEAK_NG_API espeak_ng_STATUS +espeak_ng_SetRandSeed(long seed); + #ifdef __cplusplus } diff --git a/src/libespeak-ng/common.c b/src/libespeak-ng/common.c index 8b2bb872..5e1f4316 100644 --- a/src/libespeak-ng/common.c +++ b/src/libespeak-ng/common.c @@ -340,3 +340,10 @@ void espeak_srand(long seed) { (void)espeak_rand(0, 1); // Dummy flush a generator } +#pragma GCC visibility push(default) +ESPEAK_NG_API espeak_ng_STATUS +espeak_ng_SetRandSeed(long seed) { + espeak_srand(seed); + return ENS_OK; +} +#pragma GCC visibility pop