mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-11-05 14:47:26 +00:00
SpeechSynthesis.java: Simplify the SetVoiceByProperties parameters.
The `age` parameter is not useful as eSpeak does not use this when selecting voices. This is always set to `0` by TtsService.java. The `variant` parameter is not used to select the actual voice variant (from the `!v` directory) but to select the n^th matching voice from the list of matching voices. This is always set to select the first matching voice by TtsService.java.
This commit is contained in:
@@ -242,8 +242,7 @@ JNICALL Java_com_reecedunn_espeak_SpeechSynthesis_nativeGetAvailableVoices(
|
||||
|
||||
JNIEXPORT jboolean
|
||||
JNICALL Java_com_reecedunn_espeak_SpeechSynthesis_nativeSetVoiceByProperties(
|
||||
JNIEnv *env, jobject object, jstring name, jstring languages, jint gender, jint age,
|
||||
jint variant) {
|
||||
JNIEnv *env, jobject object, jstring name, jstring languages, jint gender) {
|
||||
const char *c_name = name ? env->GetStringUTFChars(name, NULL) : NULL;
|
||||
const char *c_languages = languages ? env->GetStringUTFChars(languages, NULL) : NULL;
|
||||
|
||||
@@ -254,9 +253,7 @@ JNICALL Java_com_reecedunn_espeak_SpeechSynthesis_nativeSetVoiceByProperties(
|
||||
|
||||
voice_select.name = c_name;
|
||||
voice_select.languages = c_languages;
|
||||
voice_select.age = (int) age;
|
||||
voice_select.gender = (int) gender;
|
||||
voice_select.variant = (int) variant;
|
||||
|
||||
const espeak_ERROR result = espeak_SetVoiceByProperties(&voice_select);
|
||||
|
||||
|
||||
@@ -169,9 +169,8 @@ public class SpeechSynthesis {
|
||||
return voices;
|
||||
}
|
||||
|
||||
public void setVoiceByProperties(
|
||||
String name, String languages, int gender, int age, int variant) {
|
||||
nativeSetVoiceByProperties(name, languages, gender, age, variant);
|
||||
public void setVoiceByProperties(String name, String languages, int gender) {
|
||||
nativeSetVoiceByProperties(name, languages, gender);
|
||||
}
|
||||
|
||||
public void setRate(int rate) {
|
||||
@@ -301,8 +300,7 @@ public class SpeechSynthesis {
|
||||
|
||||
private native final String[] nativeGetAvailableVoices();
|
||||
|
||||
private native final boolean nativeSetVoiceByProperties(
|
||||
String name, String languages, int gender, int age, int variant);
|
||||
private native final boolean nativeSetVoiceByProperties(String name, String languages, int gender);
|
||||
|
||||
private native final boolean nativeSetRate(int rate);
|
||||
|
||||
|
||||
@@ -221,7 +221,7 @@ public class TtsService extends TextToSpeechService {
|
||||
mCallback.start(mEngine.getSampleRate(), mEngine.getAudioFormat(),
|
||||
mEngine.getChannelCount());
|
||||
|
||||
mEngine.setVoiceByProperties(null, mMatchingVoice.name, gender, 0, 0);
|
||||
mEngine.setVoiceByProperties(null, mMatchingVoice.name, gender);
|
||||
mEngine.setRate(rate);
|
||||
mEngine.setPitch(pitch);
|
||||
mEngine.synthesize(text, text.startsWith("<speak"));
|
||||
|
||||
Reference in New Issue
Block a user