add vad+sense voice example for C API (#1291)
This commit is contained in:
@@ -3,7 +3,8 @@
|
||||
// Copyright (c) 2024 Xiaomi Corporation
|
||||
|
||||
//
|
||||
// This file demonstrates how to use streaming Zipformer with sherpa-onnx's C API.
|
||||
// This file demonstrates how to use streaming Zipformer with sherpa-onnx's C
|
||||
// API.
|
||||
// clang-format off
|
||||
//
|
||||
// wget https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/sherpa-onnx-streaming-zipformer-en-20M-2023-02-17.tar.bz2
|
||||
@@ -19,28 +20,33 @@
|
||||
#include "sherpa-onnx/c-api/c-api.h"
|
||||
|
||||
int32_t main() {
|
||||
|
||||
const char *wav_filename = "sherpa-onnx-streaming-zipformer-en-20M-2023-02-17/test_wavs/0.wav";
|
||||
const char *encoder_filename = "sherpa-onnx-streaming-zipformer-en-20M-2023-02-17/encoder-epoch-99-avg-1.onnx";
|
||||
const char *decoder_filename = "sherpa-onnx-streaming-zipformer-en-20M-2023-02-17/decoder-epoch-99-avg-1.onnx";
|
||||
const char *joiner_filename = "sherpa-onnx-streaming-zipformer-en-20M-2023-02-17/joiner-epoch-99-avg-1.onnx";
|
||||
const char *tokens_filename = "sherpa-onnx-streaming-zipformer-en-20M-2023-02-17/tokens.txt";
|
||||
const char *wav_filename =
|
||||
"sherpa-onnx-streaming-zipformer-en-20M-2023-02-17/test_wavs/0.wav";
|
||||
const char *encoder_filename =
|
||||
"sherpa-onnx-streaming-zipformer-en-20M-2023-02-17/"
|
||||
"encoder-epoch-99-avg-1.onnx";
|
||||
const char *decoder_filename =
|
||||
"sherpa-onnx-streaming-zipformer-en-20M-2023-02-17/"
|
||||
"decoder-epoch-99-avg-1.onnx";
|
||||
const char *joiner_filename =
|
||||
"sherpa-onnx-streaming-zipformer-en-20M-2023-02-17/"
|
||||
"joiner-epoch-99-avg-1.onnx";
|
||||
const char *tokens_filename =
|
||||
"sherpa-onnx-streaming-zipformer-en-20M-2023-02-17/tokens.txt";
|
||||
const char *provider = "cpu";
|
||||
|
||||
|
||||
const SherpaOnnxWave *wave = SherpaOnnxReadWave(wav_filename);
|
||||
if (wave == NULL) {
|
||||
fprintf(stderr, "Failed to read %s\n", wav_filename);
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
// Zipformer config
|
||||
SherpaOnnxOnlineTransducerModelConfig zipformer_config;
|
||||
memset(&zipformer_config, 0, sizeof(zipformer_config));
|
||||
zipformer_config.encoder = encoder_filename;
|
||||
zipformer_config.decoder = decoder_filename;
|
||||
zipformer_config.joiner = joiner_filename;
|
||||
|
||||
|
||||
// Online model config
|
||||
SherpaOnnxOnlineModelConfig online_model_config;
|
||||
|
||||
Reference in New Issue
Block a user