1.设置的识别属性无效以及用BDRecognizerViewController 有显示一下马上消失
阿倫KYL 发布于2016-03 浏览:1992 回复:1
0
收藏

    1.EVoiceRecognitionStartWorkPropertyInvalid,               // 设置的识别属性无效

用swift 做撰写时

func showBaiduVoiceRecognizer1(){

        

        

        //set up developer info,

        BDVoiceRecognitionClient.sharedInstance().setApiKey(BDVRSConstant.API_KEY, withSecretKey: BDVRSConstant.SECRET_KEY)

        //let temp = [bdConfig.recognitionProperty] // 设置语音识别模式,默认是输入模式

        BDVoiceRecognitionClient.sharedInstance().setPropertyList(["\(BDVRSConfig.shareInstance.recognitionProperty)"])

        //BDVoiceRecognitionClient.sharedInstance().setProperty(TBDVoiceRecognitionProperty.init(BDVRSConfig.shareInstance.recognitionProperty))

              //设置城市ID,当识别属性包含EVoiceRecognitionPropertyMap时有效

        BDVoiceRecognitionClient.sharedInstance().setCityID(1)

         // 设置是否需要语义理解,只在搜索模式有效

        BDVoiceRecognitionClient.sharedInstance().setConfig("nlu", withFlag: BDVRSConfig.shareInstance.isNeedNLU)

        

        // 设置识别语言

        BDVoiceRecognitionClient.sharedInstance().setLanguage(Int32(BDVRSConfig.shareInstance.recognitionLanguage))

        

        // 是否打开语音音量监听功能,可选

        if BDVRSConfig.shareInstance.voiceLevelMeter {

            let res:Bool = BDVoiceRecognitionClient.sharedInstance().listenCurrentDBLevelMeter()

            if res == false {

                BDVRSConfig.shareInstance.voiceLevelMeter = false

            }

        }else{

            BDVoiceRecognitionClient.sharedInstance().cancelListenCurrentDBLevelMeter()

        }

        

        

        // 设置播放开始说话提示音开关,可选

        BDVoiceRecognitionClient.sharedInstance().setPlayTone(Int32(EVoiceRecognitionPlayTonesRecStart.rawValue), isPlay: BDVRSConfig.shareInstance.playStartMusicSwitch)

        // 设置播放结束说话提示音开关,可选

        BDVoiceRecognitionClient.sharedInstance().setPlayTone(Int32(EVoiceRecognitionPlayTonesRecEnd.rawValue), isPlay: BDVRSConfig.shareInstance.playEndMusicSwitch)

        

        

        

        // 加载离线识别引擎

       

        //    NSString* licenseFilePath= [[NSBundle mainBundle] pathForResource:@"bdasr_temp_license" ofType:@"dat"];

        let dataPath:String = NSBundle.mainBundle().pathForResource("s_1", ofType: "")!

        var LMDatFilePath:String?

        if BDVRSConfig.shareInstance.recognitionProperty == EVoiceRecognitionPropertyMap.rawValue {

            LMDatFilePath = NSBundle.mainBundle().pathForResource("s_2_Navi", ofType: "")

        }else if BDVRSConfig.shareInstance.recognitionProperty == EVoiceRecognitionPropertyInput.rawValue {

            LMDatFilePath = NSBundle.mainBundle().pathForResource("s_2_InputMethod", ofType: "")

        }

        

        

        let recogGrammSlot:NSDictionary = ["$name_CORE":"张三\n李四\n",

            "$song_CORE":"小苹果\n朋友\n",

            "$app_CORE":"QQ\n百度\n微信\n百度地图\n",

            "$artist_CORE":"刘德华\n周华健\n"];

        //NSString* lincenseFilePath = [[NSBundle mainBundle] pathForResource:@"temp_license_2016-03-22" ofType:@""];

        let licenseFilePath:String? = NSBundle.mainBundle().pathForResource("temp_license_2016-03-22", ofType: "")

        

        

        let ret = BDVoiceRecognitionClient.sharedInstance().loadOfflineEngine(BDVRSConstant.APPID, license: licenseFilePath, datFile: dataPath, LMDatFile: LMDatFilePath, grammSlot: recogGrammSlot as [NSObject : AnyObject])

        

        

        if (0 != ret) {

            print("load offline engine failed: %d", ret);

            return;

        }

        

        var startStatus:Int32 = -1

        startStatus = BDVoiceRecognitionClient.sharedInstance().startVoiceRecognition(self)

        print(startStatus)

        // 创建语音识别界面,在其viewdidload方法中启动语音识别

        //var tmpAudioViewController = BDVRCustomRecognitonViewController.init(nibName: nil, bundle: nil)

        //self.audioViewController = tmpAudioViewController

        //UIApplication.sharedApplication().keyWindow?.addSubview(audioViewController!.view)

        

        

    }//showBaiduVoiceRecognizer()

一直无法 回传 2000成功 永远都是 2008 识别属性无效 请问是哪边出错了

另外 如果使用 BDRecognizerViewController 有稍微跳出视窗请等待,没有跳出输入语音的视窗 但是马上就消失 请问可能是和问题


收藏
点赞
0
个赞
共1条回复 最后由用户已被禁言回复于2022-04
#2fang4096回复于2016-04

请阅读文档,文档中有关于属性设置的详细描述。

0
TOP
切换版块