Toggle navigation
Toggle navigation
此项目
正在载入...
Sign in
xuning
/
sherpaonnx
转到一个项目
Toggle navigation
项目
群组
代码片段
帮助
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
Fangjun Kuang
2024-01-15 11:46:57 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Committed by
GitHub
2024-01-15 11:46:57 +0800
Commit
f4e3f45664c43d7291584238af58a4f2fe869eb9
f4e3f456
1 parent
229853b7
Fix setting speaker ID for Android TTS Engine. (#530)
显示空白字符变更
内嵌
并排对比
正在显示
4 个修改的文件
包含
24 行增加
和
13 行删除
android/SherpaOnnxTts/app/src/main/java/com/k2fsa/sherpa/onnx/MainActivity.kt
android/SherpaOnnxTtsEngine/app/src/main/java/com/k2fsa/sherpa/onnx/tts/engine/MainActivity.kt
android/SherpaOnnxTtsEngine/app/src/main/java/com/k2fsa/sherpa/onnx/tts/engine/TtsEngine.kt
android/SherpaOnnxTtsEngine/app/src/main/java/com/k2fsa/sherpa/onnx/tts/engine/TtsService.kt
android/SherpaOnnxTts/app/src/main/java/com/k2fsa/sherpa/onnx/MainActivity.kt
查看文件 @
f4e3f45
...
...
@@ -184,7 +184,7 @@ class MainActivity : AppCompatActivity() {
// modelDir = "vits-zh-aishell3"
// modelName = "vits-aishell3.onnx"
// ruleFsts = "vits-zh-aishell3/rule.fst"
// lex
ci
on = "lexicon.txt"
// lex
ic
on = "lexicon.txt"
if (dataDir != null) {
val newDir = copyDataDir(modelDir)
...
...
android/SherpaOnnxTtsEngine/app/src/main/java/com/k2fsa/sherpa/onnx/tts/engine/MainActivity.kt
查看文件 @
f4e3f45
...
...
@@ -16,6 +16,7 @@ import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.wrapContentHeight
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material3.Button
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.MaterialTheme
...
...
@@ -32,6 +33,7 @@ import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.text.input.KeyboardType
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import com.k2fsa.sherpa.onnx.tts.engine.ui.theme.SherpaOnnxTtsEngineTheme
...
...
@@ -65,10 +67,14 @@ class MainActivity : ComponentActivity() {
}
var testText by remember { mutableStateOf("") }
OutlinedTextField(value = testText,
OutlinedTextField(
value = testText,
onValueChange = { testText = it },
label = { Text ("Test text") },
modifier = Modifier.fillMaxWidth().wrapContentHeight().padding(16.dp),
label = { Text("Test text") },
modifier = Modifier
.fillMaxWidth()
.wrapContentHeight()
.padding(16.dp),
singleLine = false,
)
...
...
@@ -76,11 +82,16 @@ class MainActivity : ComponentActivity() {
if (numSpeakers > 1) {
Row {
Text("Speaker ID: (0-${numSpeakers - 1})")
Slider(
value = TtsEngine.speakerIdState.value.toFloat(),
onValueChange = { TtsEngine.speakerId = it.toInt() },
valueRange = 0.0f..(numSpeakers - 1).toFloat(),
steps = 1
OutlinedTextField(
value = TtsEngine.speakerIdState.value.toString(),
onValueChange = {
if (it.isEmpty() || it.isBlank()) {
TtsEngine.speakerId = 0
} else {
TtsEngine.speakerId = it.toString().toInt()
}
},
keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Number)
)
}
}
...
...
android/SherpaOnnxTtsEngine/app/src/main/java/com/k2fsa/sherpa/onnx/tts/engine/TtsEngine.kt
查看文件 @
f4e3f45
...
...
@@ -87,7 +87,7 @@ object TtsEngine {
// modelDir = "vits-zh-aishell3"
// modelName = "vits-aishell3.onnx"
// ruleFsts = "vits-zh-aishell3/rule.fst"
// lex
ci
on = "lexicon.txt"
// lex
ic
on = "lexicon.txt"
// lang = "zho"
if (dataDir != null) {
...
...
android/SherpaOnnxTtsEngine/app/src/main/java/com/k2fsa/sherpa/onnx/tts/engine/TtsService.kt
查看文件 @
f4e3f45
...
...
@@ -81,11 +81,11 @@ class TtsService : TextToSpeechService() {
override fun onLoadLanguage(_lang: String?, _country: String?, _variant: String?): Int {
val lang = _lang ?: ""
if (lang == TtsEngine.lang) {
return
if (lang == TtsEngine.lang) {
TtsEngine.createTts(application)
return
TextToSpeech.LANG_AVAILABLE
TextToSpeech.LANG_AVAILABLE
} else {
return
TextToSpeech.LANG_NOT_SUPPORTED
TextToSpeech.LANG_NOT_SUPPORTED
}
}
...
...
请
注册
或
登录
后发表评论