Add Kotlin and Java API for FireRedAsr AED model (#1870)

This commit is contained in:
Fangjun Kuang
2025-02-17 10:50:25 +08:00
committed by GitHub
parent 316424b382
commit d148860d2c
10 changed files with 188 additions and 1 deletions

View File

@@ -174,6 +174,26 @@ static OfflineRecognizerConfig GetOfflineConfig(JNIEnv *env, jobject config) {
ans.model_config.whisper.tail_paddings =
env->GetIntField(whisper_config, fid);
// FireRedAsr
fid = env->GetFieldID(model_config_cls, "fireRedAsr",
"Lcom/k2fsa/sherpa/onnx/OfflineFireRedAsrModelConfig;");
jobject fire_red_asr_config = env->GetObjectField(model_config, fid);
jclass fire_red_asr_config_cls = env->GetObjectClass(fire_red_asr_config);
fid =
env->GetFieldID(fire_red_asr_config_cls, "encoder", "Ljava/lang/String;");
s = (jstring)env->GetObjectField(fire_red_asr_config, fid);
p = env->GetStringUTFChars(s, nullptr);
ans.model_config.fire_red_asr.encoder = p;
env->ReleaseStringUTFChars(s, p);
fid =
env->GetFieldID(fire_red_asr_config_cls, "decoder", "Ljava/lang/String;");
s = (jstring)env->GetObjectField(fire_red_asr_config, fid);
p = env->GetStringUTFChars(s, nullptr);
ans.model_config.fire_red_asr.decoder = p;
env->ReleaseStringUTFChars(s, p);
// moonshine
fid = env->GetFieldID(model_config_cls, "moonshine",
"Lcom/k2fsa/sherpa/onnx/OfflineMoonshineModelConfig;");