Android 科大讯飞语音交互API简单使用

         
科大讯飞 MSC( Mobile Speech Client,移动语音终端) Android 版 SDK 集成了

语音听写、语音识别、语音合成、 语义理解、 语音评测等接口的使用。

这里只针对语音听写部分做一点浅析。

首先,要导入科大讯飞的SDK。
    就是MSC.jar这个包。
    如果您的项目有 libs/armeabi-v7a 这个目录,请务必把 libmsc.so 复制一份到这个目录。

其次,在Manifest中加入用户权限。


<uses-permissionandroid:name="android.permission.INTER

<uses-permissionandroid:name="android.permission.ACCE

<uses-permissionandroid:name="android.permission.ACCE

<uses-permissionandroid:name="android.permission.CHAN

<uses-permissionandroid:name="android.permission.READ


然后,就是编写代码了。

   初始化即创建语音配置对象,只有初始化后才可以使用 MSC 的各项服务。 建议将初始化放在程
  序入口处(如 Application、 Activity 的 onCreate 方法), 初始化代码如下:
    SpeechUtility.createUtility(MainActivity.this, SpeechConstant.APPID +"=558cc56a");   


  听写主要指将连续语音快速识别为文字的过程, 科大讯飞语音听写能识别通用常见的语句、词
  汇, 而且不限制说法。 语音听写的调用方法如下:

       mIat= SpeechRecognizer.createRecognizer(context, null);
        //设置应用领域为读写
        mIat.setParameter(SpeechConstant.DOMAIN, "iat");
       //设置语音为中文
        mIat.setParameter(SpeechConstant.LANGUAGE, "zh_cn");
       //设置口音为普通话
        mIat.setParameter(SpeechConstant.ACCENT, "mandarin ");
        mIat.startListening(mRecoListener);//添加监听

//听写监听器
private RecognizerListenermRecoListener=new RecognizerListener(){
//听写结果回调接口 (返回Json格式结果,用户可参见附录12.1);
//一般情况下会通过onResults接口多次返回结果,完整的识别内容是多次结果的累加;
//关于解析Json的代码可参见MscDemo中JsonParser类;
//isLast等于true时会话结束。
public void onResult(RecognizerResult results,booleanisLast) {
Log.d("Result:",results.getResultString ());}
//会话发生错误回调接口
public void onError(SpeechError error) {
error.getPlainDescription(true)//获取错误码描述}
//开始录音
public void onBeginOfSpeech() {}
//音量值0~30
public void onVolumeChanged(intvolume){}
//结束录音
public void onEndOfSpeech() {}
//扩展用接口
public void onEvent(inteventType,intarg1,intarg2, Bundle obj) {}
};




到这里,一个简单的语音交互程序就完成了。详细代码可以下载工程文件。

资源下载链接:http://download.csdn.net/detail/t03330130/8862755


      

你可能感兴趣的:(应用开发)