【急!】离线自定义命令词场景(prop:10021),自定义命令词始终无法识别问题。(Android 离在线融合SDK)
悦声驾车 发布于2015-10 浏览:42276 回复:4
0
收藏

验证离线场景下,命令词识别能力,始终无法识别传入的命令词。


切换到其他离线支持的prop时,识别OK, 就是离线自定义命令词场景不识别,始终报:“No recognition result matched., reason: 7998, no confidence.”错误。


请BD的大神协助看看~



==========================


详细如下:


10-10 19:00:59.610: D/Sdk2Api(3969): ----点击了“开始”

10-10 19:00:59.610: E/Sdk2Api(3969): extra:  Bundle[{asr-base-file-path=/data/data/com.assistant.demo/files/asr/baidu/s_1, language=cmn-Hans-CN, sample=16000, nlu=disable, vad=search, prop=100021, slot-data={"name":["张三","李四","章三","长城宽带","李必龙"],"usercommand":["对","是的","OK","不对","不是","不是的","嗯","挂了","烦死了"]}}]

10-10 19:00:59.610: D/Sdk2Api(3969): ----参数集:

10-10 19:00:59.750: D/Device(3969): read deviceID:55B9CE5E92367C5FA1738C2B86AE0007|382710020449668

10-10 19:00:59.790: D/Device(3969): read deviceID:55B9CE5E92367C5FA1738C2B86AE0007|382710020449668

10-10 19:00:59.840: I/android.media.AudioRecord(3969): startRecording

10-10 19:00:59.840: D/AudioRecordPermission(3969): AudioRecordPermission

10-10 19:00:59.860: D/StubController(3969): holdAndGetPermissionType permissionType:128 uid:10345 pid:3969

10-10 19:00:59.860: D/StubController(3969): addRequestCount, mRequestCount =1 mPhoneIDRequestCount: 0 mLocationRequestCount: 0 permissionType is: 128

10-10 19:00:59.860: D/StubController(3969): holdForGetPermissionSelection  mRequestCount:1

10-10 19:00:59.870: D/StubController(3969): beforeShowDialogCheckResult:1

10-10 19:00:59.870: D/StubController(3969): minusRequestCount, mRequestCount =0 mPhoneIDRequestCount: 0 mLocationRequestCount: 0 permissionType is: 128

10-10 19:00:59.870: I/AudioRecordPermission(3969): remindWithResult:false

10-10 19:00:59.880: I/AudioRecord(3969): sendStateChangedIntent, state=3

10-10 19:00:59.980: D/Sdk2Api(3969): ----准备就绪,可以开始说话

10-10 19:01:00.420: D/Sdk2Api(3969): ----*引擎切换至离线

10-10 19:01:00.440: D/Sdk2Api(3969): ----检测到用户的已经开始说话

10-10 19:01:00.470: I/View(3969): ssignParent(ViewParent parent) parent is: android.view.ViewRootImpl@eba55f9

10-10 19:01:00.510: D/mali_winsys(3969): new_window_surface returns 0x3000

10-10 19:01:00.550: V/RenderScript(3969): 0xabc372d0 Launching thread(s), CPUs 8

10-10 19:01:02.430: V/Toast(3969): HIDE: android.widget.Toast$TN@38209180

10-10 19:01:02.430: I/View(3969): ssignParent(ViewParent parent) parent is: null

10-10 19:01:02.430: I/View(3969): ssignParent(ViewParent parent) parent is: null

10-10 19:01:04.240: W/System.err(3969): java.lang.Exception: #7, No recognition result matched., reason: 7998, no confidence.

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.OfflineDecoder.needParseMoreResult(OfflineDecoder.java:153)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.OfflineDecoder.onExecute(OfflineDecoder.java:106)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.MergedDecoder.onExecute(MergedDecoder.java:195)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.AbsStreamDecoder$Task.call(AbsStreamDecoder.java:139)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.AbsStreamDecoder$Task.call(AbsStreamDecoder.java:100)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.FutureTask.run(FutureTask.java:237)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)

10-10 19:01:04.240: W/System.err(3969): at java.lang.Thread.run(Thread.java:831)

10-10 19:01:04.240: W/System.err(3969): java.util.concurrent.ExecutionException: java.lang.Exception: #7, No recognition result matched., reason: 7998, no confidence.(cannot switch to online: network unavailable.)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.FutureTask.report(FutureTask.java:93)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.FutureTask.get(FutureTask.java:163)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.AbsStreamDecoder.checkFutures(AbsStreamDecoder.java:85)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.AbsStreamDecoder.read(AbsStreamDecoder.java:77)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.MergedDecoder.read(MergedDecoder.java:136)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.AsrSession.collectResultMessages(AsrSession.java:378)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.AsrSession.onExecute(AsrSession.java:330)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.AbsSession.run(AbsSession.java:73)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.FutureTask.run(FutureTask.java:237)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)

10-10 19:01:04.240: W/System.err(3969): at java.lang.Thread.run(Thread.java:831)

10-10 19:01:04.240: W/System.err(3969): Caused by: java.lang.Exception: #7, No recognition result matched., reason: 7998, no confidence.(cannot switch to online: network unavailable.)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.MergedDecoder.onExecute(MergedDecoder.java:221)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.AbsStreamDecoder$Task.call(AbsStreamDecoder.java:139)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.AbsStreamDecoder$Task.call(AbsStreamDecoder.java:100)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.FutureTask.run(FutureTask.java:237)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152)

10-10 19:01:04.240: W/System.err(3969): at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265)

10-10 19:01:04.240: W/System.err(3969): ... 3 more

10-10 19:01:04.240: W/System.err(3969): Caused by: java.lang.Exception: #7, No recognition result matched., reason: 7998, no confidence.

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.OfflineDecoder.needParseMoreResult(OfflineDecoder.java:153)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.OfflineDecoder.onExecute(OfflineDecoder.java:106)

10-10 19:01:04.240: W/System.err(3969): at com.baidu.speech.MergedDecoder.onExecute(MergedDecoder.java:195)

10-10 19:01:04.240: W/System.err(3969): ... 8 more

10-10 19:01:04.250: I/android.media.AudioRecord(3969): stopRecording

10-10 19:01:04.330: I/AudioRecord(3969): sendStateChangedIntent, state=1

10-10 19:01:04.380: D/Sdk2Api(3969): ----识别失败:没有匹配的识别结果:7

10-10 19:01:04.390: D/Sdk2Api(3969): ----EVENT_ERROR, #7, No recognition result matched., reason: 7998, no confidence.(cannot switch to online: network unavailable.)





收藏
点赞
0
个赞
共4条回复 最后由用户已被禁言回复于2022-04
#5悦声驾车回复于2015-10

多谢答复, 已经了解到了原因。


这块目前有限制,还没发布。 需要等半个月左右上线。

0
#4liu10028回复于2015-10

离线命令词识别需要开发者自己传入需要识别的命令词,然后切换到命令词模式下识别,不清楚你的离线命令是否传入。

0
#3悦声驾车回复于2015-10

捉急啊。。。 

百度的各位大神能给个意见不》》》》

0
#2悦声驾车回复于2015-10

是因为离线不支持自定义 命令词识别么?


但从文档说明看是支持命令词的。


100021命令词(离线支持)


0
TOP
切换版块