|
|
@@ -175,16 +175,18 @@ class SpeechPlugin : MethodCallHandler {
|
|
|
val resultParser = XmlResultParser()
|
|
|
val parseResult = resultParser.parse(builder.toString()) as ReadSentenceResult
|
|
|
val formatWords = arrayListOf<SimpleWord>()
|
|
|
- for (sentence in parseResult.sentences) {
|
|
|
- val words = sentence.words
|
|
|
- for (word in words) {
|
|
|
- // 过滤掉sil、 silv 表示静音, fil 表示噪音
|
|
|
- if (word.content == "sil" || word.content == "silv" || word.content == "fil")
|
|
|
- continue
|
|
|
- formatWords.add(SimpleWord(word.content, word.total_score))
|
|
|
+ if (parseResult.sentences != null) {
|
|
|
+ for (sentence in parseResult.sentences) {
|
|
|
+ val words = sentence.words
|
|
|
+ for (word in words) {
|
|
|
+ // 过滤掉sil、 silv 表示静音, fil 表示噪音
|
|
|
+ if (word.content == "sil" || word.content == "silv" || word.content == "fil")
|
|
|
+ continue
|
|
|
+ formatWords.add(SimpleWord(word.content, word.total_score))
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+ Log.d(TAG, parseResult.toString());
|
|
|
invokeEvaluatorResult(index, score = (if (parseResult.is_rejected) null else parseResult.total_score), integrityScore = if (parseResult.is_rejected) null else parseResult.integrity_score,
|
|
|
accuracyScore = if (parseResult.is_rejected) null else parseResult.accuracy_score, fluencyScore = if (parseResult.is_rejected) null else parseResult.fluency_score,
|
|
|
words = JSON.toJSONString(formatWords))
|