This repository has been archived on 2025-08-26. You can view files and clone it, but cannot push or open issues or pull requests.
Files
enginex-mr_series-sherpa-onnx/.github/scripts/Main.kt
Fangjun Kuang 5f31b22c12 Fix modified beam search for iOS and android (#76)
* Use Int type for sampling rate

* Fix swift

* Fix iOS
2023-03-03 15:18:31 +08:00

55 lines
1.6 KiB
Kotlin

package com.k2fsa.sherpa.onnx
import android.content.res.AssetManager
fun main() {
var featConfig = FeatureConfig(
sampleRate = 16000,
featureDim = 80,
)
var modelConfig = OnlineTransducerModelConfig(
encoder = "./sherpa-onnx-streaming-zipformer-en-2023-02-21/encoder-epoch-99-avg-1.onnx",
decoder = "./sherpa-onnx-streaming-zipformer-en-2023-02-21/decoder-epoch-99-avg-1.onnx",
joiner = "./sherpa-onnx-streaming-zipformer-en-2023-02-21/joiner-epoch-99-avg-1.onnx",
tokens = "./sherpa-onnx-streaming-zipformer-en-2023-02-21/tokens.txt",
numThreads = 1,
debug = false,
)
var endpointConfig = EndpointConfig()
var config = OnlineRecognizerConfig(
modelConfig = modelConfig,
featConfig = featConfig,
endpointConfig = endpointConfig,
enableEndpoint = true,
decodingMethod = "greedy_search",
maxActivePaths = 4,
)
var model = SherpaOnnx(
assetManager = AssetManager(),
config = config,
)
var samples = WaveReader.readWave(
assetManager = AssetManager(),
filename = "./sherpa-onnx-streaming-zipformer-en-2023-02-21/test_wavs/1089-134686-0001.wav",
)
model.acceptWaveform(samples!!, sampleRate=16000)
while (model.isReady()) {
model.decode()
}
var tail_paddings = FloatArray(8000) // 0.5 seconds
model.acceptWaveform(tail_paddings, sampleRate=16000)
model.inputFinished()
while (model.isReady()) {
model.decode()
}
println("results: ${model.text}")
}