Main.kt 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package com.k2fsa.sherpa.ncnn
  2. import android.content.res.AssetManager
  3. fun main() {
  4. val featConfig =
  5. getFeatureExtractorConfig(sampleRate = 16000.0f, featureDim = 80)
  6. val modelConfig = getModelConfig(type = 1, useGPU = false)!!
  7. val decoderConfig = getDecoderConfig(method = "greedy_search", numActivePaths = 4)
  8. val config = RecognizerConfig(
  9. featConfig = featConfig,
  10. modelConfig = modelConfig,
  11. decoderConfig = decoderConfig,
  12. enableEndpoint = false,
  13. rule1MinTrailingSilence = 2.0f,
  14. rule2MinTrailingSilence = 1.0f,
  15. rule3MinUtteranceLength = 20.0f,
  16. )
  17. var model = SherpaNcnn(
  18. assetManager = AssetManager(),
  19. config = config,
  20. )
  21. var samples = WaveReader.readWave(
  22. assetManager = AssetManager(),
  23. filename = "./sherpa-ncnn-conv-emformer-transducer-2022-12-06/test_wavs/2.wav"
  24. )
  25. model.acceptSamples(samples!!)
  26. var tail_paddings = FloatArray(8000) // 0.5 seconds
  27. model.acceptSamples(tail_paddings)
  28. model.inputFinished()
  29. while (model.isReady()) {
  30. model.decode()
  31. }
  32. println(model.text)
  33. return
  34. }