AndroidMSC开发手册科大讯飞股份_第1页
AndroidMSC开发手册科大讯飞股份_第2页
AndroidMSC开发手册科大讯飞股份_第3页
AndroidMSC开发手册科大讯飞股份_第4页
AndroidMSC开发手册科大讯飞股份_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MSCMSCMSC1Step12Step2<!--获取当前wifi-keepclassStep3程序入口处(如Application、Activity的onCreate方法,初始化代码如下:SpeechUtility.createUtility(context,SpeechConstant.APPID+"=12345678");注意:此接口在非主进程调用会返回 ,"+mIat.setParameter(SpeechConstant.DOMAIN,"iat");mIat.setParameter(SpeechConstant.LANGUAGE,"zh_cn");mIat.setParameter(SpeechConstant.ACCENT,"mandarin"); privateRecognizerListenermRecoListener=newpublicvoidonResult(RecognizerResultresults,boolean{Log.d("Result:",results.getResultStringpublicvoidonError(SpeechErrorerror.getPlainDescription(true获取错误码描述publicvoidonBeginOfSpeech()publicvoidonEndOfSpeech()publicvoidonEvent(inteventType,intarg1,intarg2,Bundleobj)3RecognizerDialogiatDialognew一个联系人列表,联系人格式详见《科大讯飞MSCAPI手册(Android)》ContactManager类。privateContactListenermContactListener=new{publicvoidonContactQueryFinish(StringcontactInfos,booleanchangeFlag)mIat.setParameter(SpeechConstant.TEXT_ENCODING,"utf-8");ret=mIat.updateLexicon("contact",contactInfos,if(ret!=Log.d(TAG,"上传联系人失败:}privateLexiconListenerlexiconListener=new{publicvoidonLexiconUpdated(StringlexiconId,SpeechErrorerror)if(errornull){}}对应一个词表,用户词表的格式及构造方法详见《科大讯飞MSCAPI手册(Android)》UserWordsStringcontents="您所定义的用户词表内容";ret=mIat.updateLexicon("userword",contents,lexiconListener);if(ret!="+}privateLexiconListenerlexiconListener=new{publicvoidonLexiconUpdated(StringlexiconId,SpeechErrorerror)if(errornull){}}端识别和本地识别,云端和本地分别采用ABNF和BNF语法格式。StringmCloudGrammar="#ABNF1.0UTF-modevoice;root$main;$main$place1到$place2$place1=|||||东京$place2=|合肥ret=mAsr.buildGrammar("abnf",mCloudGrammar,if(ret!=Log.d(TAG,"语法构建失败,错误码:}ret=mAsr.startListening(mRecognizerListener);if(ret!=Log.d(TAG,"识别失败,错误码+}privateGrammarListenergrammarListener=new{publicvoidonBuildFinish(StringgrammarId,SpeechErrorerror)if(errornull){Log.d(TAG,"语法构建失败,错误码:}//1.SpeechSynthesizer对象,InitListener//2.合成参数设置,详见《科大讯飞MSCAPI手册(Android)》SpeechSynthesizer类mTts.setParameter(SpeechConstant.VOICE_NAME,"xiaoyan");//设置发音人mTts.setParameter(SpeechConstant.SPEED,"50");//设置语速mTts.setParameter(SpeechConstant.VOLUME,"80");//设置音量,范围0~100",privateSynthesizerListenermSynListener=newpublicvoidonCompleted(SpeechErrorerror)publicvoidonBufferProgress(intpercent,intbeginPos,intendPos,Stringinfo)publicvoidonSpeakBegin()publicvoidonSpeakPaused()publicvoidonSpeakProgress(intpercent,intbeginPos,intendPos)publicvoidonSpeakResumed()publicvoidonEvent(intarg0,intarg1,intarg2,Bundlearg3)您可以通过后台配置出一套您专属的语义结果,详见//privateSpeechUnderstanderListenermUnderstanderListener=newpublicvoidonResult(UnderstanderResult{Stringtext=}{}publicvoidonEvent(inteventType,intarg1,intarg2,Bundleobj)//,publicvoidonError(SpeechErrorerror)Uriuri=Uri.parse(url);Intentit=newIntent(Intent.ACTION_VIEW,uri);}privateInitListenermInitListener=newInitListener()publicvoidonInit(intcode)if(code==ErrorCode.SUCCESS)//id(id在语法文件中定义)、门限值mAsr.setParameter(SpeechConstant.LOCAL_GRAMMAR,"call");ret=mAsr.startListening(mRecognizerListener);privateInitListenermInitListener=newInitListener(),*1.PLUS_LOCAL_ALL:PLUS_LOCAL_ASR:PLUS_LOCAL_TTS:Stringtype=Stringresource=////SpeechEvaluatormSpeechEvaluator=SpeechEvaluator.createEvaluator(IseDemoActivity.this,null);////////设置前、后端点超时mSpeechEvaluator.setParameter(SpeechConstant.VAD_BOSvadbos);mSpeechEvaluator.setParameter(SpeechConstant.VAD_EOSvadeos);//设置录音超时,设置成-1//2是是是否否时否,默认为否privateEvaluatorListenermEvaluatorListener=newEvaluatorListener()//publicvoidonResult(EvaluatorResultresult,booleanisLast)//publicvoidonError(SpeechErrorerror)//publicvoidonBeginOfSpeech()//publicvoidonEndOfSpeech()//publicvoidonVolumeChanged(intvolume)//publicvoidonEvent(inteventType,intarg1,intarg2,Bundleobj)//评测参数、结果说明文档》,第二个参数为扩展参数,请设置为nullmSpeechEvaluator.startEvaluating(evaText,null,mEvaluatorListener);startEvaluatingstopEvaluating停止录音,也可SDKvad并停止录音。当评测出错时,SDKonError方法抛出3结果说明文档》文档,具体的解析过程可参考demo工程com.iflytek.ise.result包中的源代码。////通过setParameter设置密码类型,pwdType的取值为1、2、3,分别表示文本密码、自由说和数4pwdType1235组数字进行注册,在验证过程中会生成一串特定的数字,//通过调用//通过调用getPasswordList方法来获取密码。mPwdListener是一个回调接口,当获取到密码后,SpeechListenerSpeechListenermPwdListenter=newSpeechListener()publicvoidonEvent(inteventType,Bundleparams)publicvoidonBufferReceived(byte[]buffer)publicvoidonCompleted(SpeechErrorerror)//////对于文本密码和数字密码,必须设置密码的文本内容,pwdText的取值为“芝麻开门”或者是从////VerifierListenermRegisterListener=new{publicvoidonVolumeChanged(intvolume)publicvoidonResult(VerifierResultresult)publicvoidonEvent(inteventType,intarg1,intarg2,Bundleobj)publicvoidonError(SpeechErrorerror)publicvoidonEndOfSpeech()publicvoidonBeginOfSpeech()IDID也有可能相同,推荐的作法是在注册模型的时VerifierListeneronResultresult中携带了一个返回码(0表示成功,-1为失败)和错误码,用来判别注册是否成功以及出错原因,5有字段,以及各字段的含义见附录12.4。声纹验证过程与声纹注册类似,不同之处仅在于ISV_SST需要设置为”verify”的最佳距离是15厘米左右。如果距离差距较大的话,可能会对验证通过率产生较大影响。////对于文本和数字密码,必须设置声纹注册时用的密码文本,pwdText的取值为“芝麻开门”或者特别地,自由说一定要设置采样频率为8000//设置待操作的声纹模型的vid调用sendRequest方法查询或者删除模型,cmd的取值为“que”或“del”,表示查询或者删除,gid使用FaceRequest(Contextcontext)构造一个FaceRequest对象FaceRequestface=newFaceRequest(this);////设置auth_id//调用sendRequest(byteimg,RequestListenerlistener)方法发送注册请求,img为图片的二进制数RequestListenerRequestListenermRequestListener=newRequestListener()//获得结果时返回,JSONpublicvoidonBufferReceived(byte[]buffer)//流程结束时返回,errorpublicvoidonCompleted(SpeechErrorerror)//publicvoidonEvent(inteventType,Bundleparams)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论