Refactor the JNI interface to make it more modular and maintainable (#802)
This commit is contained in:
30
kotlin-api-examples/test_tts.kt
Normal file
30
kotlin-api-examples/test_tts.kt
Normal file
@@ -0,0 +1,30 @@
|
||||
package com.k2fsa.sherpa.onnx
|
||||
|
||||
fun main() {
|
||||
testTts()
|
||||
}
|
||||
|
||||
fun testTts() {
|
||||
// see https://github.com/k2-fsa/sherpa-onnx/releases/tag/tts-models
|
||||
// https://github.com/k2-fsa/sherpa-onnx/releases/download/tts-models/vits-piper-en_US-amy-low.tar.bz2
|
||||
var config = OfflineTtsConfig(
|
||||
model=OfflineTtsModelConfig(
|
||||
vits=OfflineTtsVitsModelConfig(
|
||||
model="./vits-piper-en_US-amy-low/en_US-amy-low.onnx",
|
||||
tokens="./vits-piper-en_US-amy-low/tokens.txt",
|
||||
dataDir="./vits-piper-en_US-amy-low/espeak-ng-data",
|
||||
),
|
||||
numThreads=1,
|
||||
debug=true,
|
||||
)
|
||||
)
|
||||
val tts = OfflineTts(config=config)
|
||||
val audio = tts.generateWithCallback(text="“Today as always, men fall into two groups: slaves and free men. Whoever does not have two-thirds of his day for himself, is a slave, whatever he may be: a statesman, a businessman, an official, or a scholar.”", callback=::callback)
|
||||
audio.save(filename="test-en.wav")
|
||||
tts.release()
|
||||
println("Saved to test-en.wav")
|
||||
}
|
||||
|
||||
fun callback(samples: FloatArray): Unit {
|
||||
println("callback got called with ${samples.size} samples");
|
||||
}
|
||||
Reference in New Issue
Block a user