类 AILocalASRIntent

  • 所有已实现的接口:
    IIntent

    public class AILocalASRIntent
    extends java.lang.Object
    implements IIntent
    • 字段概要

      字段 
      修饰符和类型 字段 说明
      java.lang.String[] wakeupWords
      唤醒词列表,用于oneshot场景过滤开头的唤醒词
    • 方法概要

      所有方法 实例方法 具体方法 已过时的方法 
      修饰符和类型 方法 说明
      void enableInterimResult​(boolean enable)
      设置是否开启识别中间结果
      java.lang.String getActiveDecoders()  
      java.lang.String getBlackWords()  
      java.util.Map<java.lang.String,​java.lang.Double> getCustomThreshold()  
      java.lang.String getDynamicList()  
      double getEnglishThreshold()  
      java.lang.String getExpandFnPath()  
      IFespxEngine getFespxEngine()  
      float getFillerPenaltyScore()  
      int getIntervalTimeThresh()  
      boolean getIsIgnoreThreshold()  
      int getMaxSpeechTimeS()  
      com.aispeech.export.ASRMode getMode()
      获取引擎模式,默认ASRMode.MODE_ASR
      int getNoSpeechTimeOut()  
      int getPauseTime()  
      java.lang.String getSaveAudioPath()  
      double getThreshold()  
      float getThreshToUploadServer()  
      java.lang.String getUseDelimiter()  
      java.lang.Boolean getVadEnable()  
      java.lang.String[] getWakeupWords()  
      java.lang.String getWords()  
      boolean isUseConf()  
      boolean isUseCustomFeed()  
      boolean isUseFiller()  
      boolean isUseFrameSplit()
      已过时。 
      boolean isUseHoldConf()  
      boolean isUseOneShot()  
      boolean isUsePinyin()  
      boolean isUseRealBack()  
      boolean isUseXbnfRec()  
      void setActiveDecoders​(java.util.List<java.lang.String> activeDecoderList)
      激活解码网络 注意:如果unregister后,必须更新此列表,否则 start会失败
      void setBlackWords​(java.lang.String blackWords)  
      void setBlackWords​(java.lang.String[] blackWords)
      设置热词黑名单
      void setCustomThreshold​(java.lang.String[] words, java.lang.Double[] threshold)
      自定义单词置信度阈值
      void setCustomThreshold​(java.util.Map<java.lang.String,​java.lang.Double> customThreshold)  
      void setDynamicList​(java.lang.String dynamicList)  
      void setDynamicList​(java.util.List<java.lang.String> dynamicList)
      设置识别热词列表字符串,比如:"北京市,YOU ARE RIGHT,BLUCE,tfboys,天安门博物馆"
      void setEnglishThreshold​(double englishThreshold)  
      void setExpandFnPath​(java.lang.String expandFnPath)
      ExpandFn 文件路径,用于动态拆分net.bin文件 start 之前传入有效
      void setFespxEngine​(IFespxEngine fespxEngine)
      设置关联的信号处理引擎AILocalSignalAndWakeupEngine实例,只在使用内部录音机且多麦模式下才需要设置
      void setFillerPenaltyScore​(float fillerPenaltyScore)  
      void setIntervalTimeThresh​(int intervalTimeThresh)  
      void setIsIgnoreThreshold​(boolean isIgnoreThreshold)
      设置是否忽略阈值,不管kernel返回的结果是大于还是小于阈值,都将结果返回给上层
      void setMaxSpeechTimeS​(int maxSpeechTimeS)
      设置音频最大录音时长,达到该值将取消语音引擎并抛出异常
      允许的最大录音时长 单位秒,取值范围 1-60秒,默认60秒
      void setMode​(com.aispeech.export.ASRMode mode)
      设置引擎模式
      void setNoSpeechTimeOut​(int noSpeechTimeOut)
      设置无语音超时时长,单位毫秒,默认值为5000ms ;如果达到该设置值时,自动停止录音并放弃请求识别内核
      void setPauseTime​(int pauseTime)
      设置VAD右边界
      void setSaveAudioPath​(java.lang.String saveAudioPath)
      设置保存的音频路径,最终的音频路径为path + local_asr_+ recordId + ".pcm"
      void setThreshold​(double threshold)
      设置置信度阈值
      void setThreshToUploadServer​(float threshToUploadServer)
      上传大数据的阈值,识别后的结果包含置信度,启动上传大数据功能后,如果达不到阈值就会上传大数据
      void setUseConf​(boolean useConf)
      设置是否开启置信度
      void setUseCustomFeed​(boolean useCustomFeed)
      设置是否自行feed数据,不使用内部录音机(包括MockRecord和AIAudioRecord),默认为false
      void setUseDelimiter​(java.lang.String useDelimiter)
      添加识别结果分割符,如设置 "," 识别结果显示 : "打,开,天,窗" start 之前设置生效
      void setUseFiller​(boolean useFiller)
      设置是否开启 Filler,用于减少误识别。
      void setUseFiller​(boolean useFiller, float fillerPenaltyScore)
      设置是否开启 Filler,用于减少误识别。
      void setUseFrameSplit​(boolean useFrameSplit)
      设置是否开启识别中间结果
      void setUseHoldConf​(boolean useHoldConf)
      设置是否开启ngram置信度
      void setUseOneShot​(boolean useOneShot)
      是否使用oneshot功能,default is false
      true 使用one shot功能,唤醒后立马起识别
      false 不使用oneshot,合成后启动识别,或只是启动识别
      void setUseOneShot​(boolean useOneShot, int intervalTimeThresh)
      设置是否使用oneshot功能,以及oneshot功能的唤醒词和命令词之间的时间间隔阈值, 如果小于该阈值,就认为不是oneshot,如果大于该阈值,就认为是oneshot
      void setUsePinyin​(boolean usePinyin)
      设置是否开启拼音输出
      void setUseRealBack​(boolean useRealBack)
      设置是否开启实时反馈
      void setUseXbnfRec​(boolean useXbnfRec)
      设置是否启用基于语法的语义识别
      void setVadEnable​(java.lang.Boolean vadEnable)
      设置是否启用本地vad。
      void setWakeupWords​(java.lang.String[] wakeupWords)
      设置唤醒词列表,用于oneshot过滤唤醒词
      void setWords​(java.lang.String words)
      直接按照内核既定格式设置词表如: \"打开副屏,打开今日头条\"
      void setWords​(java.lang.String[] words)
      设置词表
      java.lang.String toString()  
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • 字段详细资料

      • wakeupWords

        public java.lang.String[] wakeupWords
        唤醒词列表,用于oneshot场景过滤开头的唤醒词
    • 构造器详细资料

      • AILocalASRIntent

        public AILocalASRIntent()
    • 方法详细资料

      • enableInterimResult

        public void enableInterimResult​(boolean enable)
        设置是否开启识别中间结果
        参数:
        enable - true 启用,默认为false
      • setIsIgnoreThreshold

        public void setIsIgnoreThreshold​(boolean isIgnoreThreshold)
        设置是否忽略阈值,不管kernel返回的结果是大于还是小于阈值,都将结果返回给上层
      • getIsIgnoreThreshold

        public boolean getIsIgnoreThreshold()
      • setActiveDecoders

        public void setActiveDecoders​(java.util.List<java.lang.String> activeDecoderList)
        激活解码网络 注意:如果unregister后,必须更新此列表,否则 start会失败
        参数:
        activeDecoderList - 解码网络名称列表
      • setFespxEngine

        public void setFespxEngine​(IFespxEngine fespxEngine)
        设置关联的信号处理引擎AILocalSignalAndWakeupEngine实例,只在使用内部录音机且多麦模式下才需要设置
        参数:
        fespxEngine - 引擎实例
        抛出:
        java.lang.RuntimeException - 内部录音机且多麦模式下没设置
      • setNoSpeechTimeOut

        public void setNoSpeechTimeOut​(int noSpeechTimeOut)
        设置无语音超时时长,单位毫秒,默认值为5000ms ;如果达到该设置值时,自动停止录音并放弃请求识别内核
        参数:
        noSpeechTimeOut - 超时时长,单位毫秒
      • setMaxSpeechTimeS

        public void setMaxSpeechTimeS​(int maxSpeechTimeS)
        设置音频最大录音时长,达到该值将取消语音引擎并抛出异常
        允许的最大录音时长 单位秒,取值范围 1-60秒,默认60秒
        参数:
        maxSpeechTimeS - seconds
      • setWords

        public void setWords​(java.lang.String[] words)
        设置词表
        参数:
        words - 词表
      • setWords

        public void setWords​(java.lang.String words)
        直接按照内核既定格式设置词表如: \"打开副屏,打开今日头条\"
        参数:
        words - 内核词表
      • setWakeupWords

        public void setWakeupWords​(java.lang.String[] wakeupWords)
        设置唤醒词列表,用于oneshot过滤唤醒词
        参数:
        wakeupWords - 唤醒词列表
      • getWakeupWords

        public java.lang.String[] getWakeupWords()
      • setBlackWords

        public void setBlackWords​(java.lang.String[] blackWords)
        设置热词黑名单
        参数:
        blackWords - 黑名单词表
      • setEnglishThreshold

        public void setEnglishThreshold​(double englishThreshold)
      • setThreshold

        public void setThreshold​(double threshold)
        设置置信度阈值
        参数:
        threshold - 阈值
      • setCustomThreshold

        public void setCustomThreshold​(java.lang.String[] words,
                                       java.lang.Double[] threshold)
        自定义单词置信度阈值
        参数:
        words - 词表
        threshold - 阈值
      • setSaveAudioPath

        public void setSaveAudioPath​(java.lang.String saveAudioPath)
        设置保存的音频路径,最终的音频路径为path + local_asr_+ recordId + ".pcm"
        参数:
        saveAudioPath - 路径
      • setIntervalTimeThresh

        public void setIntervalTimeThresh​(int intervalTimeThresh)
      • setDynamicList

        public void setDynamicList​(java.lang.String dynamicList)
      • setFillerPenaltyScore

        public void setFillerPenaltyScore​(float fillerPenaltyScore)
      • getCustomThreshold

        public java.util.Map<java.lang.String,​java.lang.Double> getCustomThreshold()
      • setCustomThreshold

        public void setCustomThreshold​(java.util.Map<java.lang.String,​java.lang.Double> customThreshold)
      • getWords

        public java.lang.String getWords()
      • getBlackWords

        public java.lang.String getBlackWords()
      • setBlackWords

        public void setBlackWords​(java.lang.String blackWords)
      • getThreshold

        public double getThreshold()
      • getEnglishThreshold

        public double getEnglishThreshold()
      • getActiveDecoders

        public java.lang.String getActiveDecoders()
      • getMode

        public com.aispeech.export.ASRMode getMode()
        获取引擎模式,默认ASRMode.MODE_ASR
        返回:
        ASRMode
      • setMode

        public void setMode​(com.aispeech.export.ASRMode mode)
        设置引擎模式
        参数:
        mode - 默认ASRMode.MODE_ASR
      • setUseOneShot

        public void setUseOneShot​(boolean useOneShot)
        是否使用oneshot功能,default is false
        true 使用one shot功能,唤醒后立马起识别
        false 不使用oneshot,合成后启动识别,或只是启动识别
        参数:
        useOneShot - true 使用 oneshot功能,false 不使用
      • setUseOneShot

        public void setUseOneShot​(boolean useOneShot,
                                  int intervalTimeThresh)
        设置是否使用oneshot功能,以及oneshot功能的唤醒词和命令词之间的时间间隔阈值, 如果小于该阈值,就认为不是oneshot,如果大于该阈值,就认为是oneshot
        参数:
        useOneShot - true 使用 oneshot功能,false 不使用
        intervalTimeThresh - useOneShot 为 true 时才有效,单位:毫秒,默认为600ms。
      • getUseDelimiter

        public java.lang.String getUseDelimiter()
      • isUseFrameSplit

        public boolean isUseFrameSplit()
        已过时。
      • setUseFrameSplit

        public void setUseFrameSplit​(boolean useFrameSplit)
        设置是否开启识别中间结果
        参数:
        useFrameSplit - true 启用,默认为false
      • setUseDelimiter

        public void setUseDelimiter​(java.lang.String useDelimiter)
        添加识别结果分割符,如设置 "," 识别结果显示 : "打,开,天,窗" start 之前设置生效
        参数:
        useDelimiter - 分割符
      • setUseConf

        public void setUseConf​(boolean useConf)
        设置是否开启置信度
        参数:
        useConf - true 启用,默认为true
      • getExpandFnPath

        public java.lang.String getExpandFnPath()
      • setExpandFnPath

        public void setExpandFnPath​(java.lang.String expandFnPath)
        ExpandFn 文件路径,用于动态拆分net.bin文件 start 之前传入有效
        参数:
        expandFnPath - ExpandFn 文件的绝对路径 slots 文件示例{"slot": [{"name": "DEVICE","path": "device.slot.bin" }, {"name": "WAKEUP_WORD","path": "wakeup_word.slot.bin" }]}
      • setUseXbnfRec

        public void setUseXbnfRec​(boolean useXbnfRec)
        设置是否启用基于语法的语义识别
        参数:
        useXbnfRec - true 启用,默认为false
      • setUseRealBack

        public void setUseRealBack​(boolean useRealBack)
        设置是否开启实时反馈
        参数:
        useRealBack - useRealBack,默认为false
      • setUseHoldConf

        public void setUseHoldConf​(boolean useHoldConf)
        设置是否开启ngram置信度
        参数:
        useHoldConf - useRealBack,默认为true
      • setUsePinyin

        public void setUsePinyin​(boolean usePinyin)
        设置是否开启拼音输出
        参数:
        usePinyin - usePinyin,默认为false
      • setDynamicList

        public void setDynamicList​(java.util.List<java.lang.String> dynamicList)
        设置识别热词列表字符串,比如:"北京市,YOU ARE RIGHT,BLUCE,tfboys,天安门博物馆"
        参数:
        dynamicList - 热词列表字符串
      • setUseCustomFeed

        public void setUseCustomFeed​(boolean useCustomFeed)
        设置是否自行feed数据,不使用内部录音机(包括MockRecord和AIAudioRecord),默认为false
        参数:
        useCustomFeed - the useCustomFeed to set
      • getIntervalTimeThresh

        public int getIntervalTimeThresh()
      • isUseOneShot

        public boolean isUseOneShot()
      • isUseConf

        public boolean isUseConf()
      • getNoSpeechTimeOut

        public int getNoSpeechTimeOut()
      • getMaxSpeechTimeS

        public int getMaxSpeechTimeS()
      • getSaveAudioPath

        public java.lang.String getSaveAudioPath()
      • isUseXbnfRec

        public boolean isUseXbnfRec()
      • isUseRealBack

        public boolean isUseRealBack()
      • isUseHoldConf

        public boolean isUseHoldConf()
      • isUsePinyin

        public boolean isUsePinyin()
      • getDynamicList

        public java.lang.String getDynamicList()
      • isUseCustomFeed

        public boolean isUseCustomFeed()
      • getPauseTime

        public int getPauseTime()
      • setPauseTime

        public void setPauseTime​(int pauseTime)
        设置VAD右边界
        参数:
        pauseTime - pauseTime 单位:ms,默认300
      • isUseFiller

        public boolean isUseFiller()
      • setUseFiller

        public void setUseFiller​(boolean useFiller)

        设置是否开启 Filler,用于减少误识别。

        例如:asr.xbnf 里有词 “周杰伦的歌”,用户只说了 “周杰伦”。
        • 当不使用 Filler 时,会回调 “周杰伦的歌”
        • 当使用 Filler 时,会回调 ""

        当使用热词时,Filler 功能一定会打开,开关设置无效

        参数:
        useFiller - true 使用Filler,false 不使用(default)
      • getFillerPenaltyScore

        public float getFillerPenaltyScore()
      • setUseFiller

        public void setUseFiller​(boolean useFiller,
                                 float fillerPenaltyScore)

        设置是否开启 Filler,用于减少误识别。

        例如:asr.xbnf 里有词 “周杰伦的歌”,用户只说了 “周杰伦”。
        • 当不使用 Filler 时,会回调 “周杰伦的歌”
        • 当使用 Filler 时,会回调 ""

        当使用热词时,Filler 功能一定会打开,开关设置无效,惩罚分数设置仍然有效

        参数:
        useFiller - true 使用Filler,false 不使用(default)
        fillerPenaltyScore - 惩罚分数,default is 2.0。使用Filler时这个参数才有效
      • getVadEnable

        public java.lang.Boolean getVadEnable()
      • setVadEnable

        public void setVadEnable​(java.lang.Boolean vadEnable)
        设置是否启用本地vad。启用前提是 AILocalASRConfig.isVadEnable() 为true,否则该参数无效。 此参数可设置本轮start的引擎是否使用vad功能
        参数:
        vadEnable - null 使用和AILocalASRConfig.isVadEnable()一样的设置, true 使用Vad, false 禁止Vad
      • getThreshToUploadServer

        public float getThreshToUploadServer()
      • setThreshToUploadServer

        public void setThreshToUploadServer​(float threshToUploadServer)
        上传大数据的阈值,识别后的结果包含置信度,启动上传大数据功能后,如果达不到阈值就会上传大数据

        默认为1,即启动上传大数据功能后,所有音频都可以上传大数据

        参数:
        threshToUploadServer - 阈值 取值范围 0-1
      • toString

        public java.lang.String toString()
        覆盖:
        toString 在类中 java.lang.Object