300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Android 讯飞离线语音听写/离线语音识别SDK

Android 讯飞离线语音听写/离线语音识别SDK

时间:2019-12-29 14:46:24

相关推荐

Android 讯飞离线语音听写/离线语音识别SDK

平台

Android + 讯飞离线语音SDK

SDK包

下载路径及方法见讯飞官方SDK文档:

离线语音听写 Android SDK 文档 #

在开发者控制台, 可以直接下载SDK.

SDK包中的文件结构

~/Downloads/Android_esriat_exp1143_5a2b58b9$ tree.├── assets 带UI需要用到的一些图片等资源│ └── iflytek│ ├── recognize.xml│ ├── voice_bg.9.png│ ├── voice_empty.png│ ├── voice_full.png│ ├── waiting.png│ └── warning.png├── libs JNI库能JAR包, 只支持v7, v8 64│ ├── arm64-v8a│ │ └── libmsc.so│ ├── armeabi-v7a│ │ └── libmsc.so│ └── Msc.jar├── readme.txt├── release.txt├── res SDK资源│ ├── asr│ ├── iat│ │ ├── common.jet│ │ └── sms_16k.jet│ ├── ivw│ ├── layout│ │ └── ifly_layout_mnotice_image.xml│ ├── tts│ └── xtts└── sample 参考DEMO└── mscV5PlusDemo├── build.gradle├── libs│ ├── arm64-v8a│ │ └── libmsc.so│ ├── armeabi-v7a│ │ └── libmsc.so│ └── Msc.jar├── lint.xml├── msc.cfg└── src└── main├── AndroidManifest.xml├── assets│ ├── asr│ ├── call.bnf│ ├── grammar_sample.abnf│ ├── iat│ ├── iattest.wav│ ├── iflytek│ │ ├── recognize.xml│ │ ├── voice_bg.9.png│ │ ├── voice_empty.png│ │ ├── voice_full.png│ │ ├── waiting.png│ │ └── warning.png│ ├── ivw│ ├── layout│ │ └── ifly_layout_mnotice_image.xml│ ├── tts│ ├── userwords│ ├── wake.bnf│ ├── wake_grammar_sample.abnf│ └── xtts├── java│ └── com│ └── iflytek│ ├── mscv5plusdemo│ │ ├── AsrDemo.java│ │ ├── IatDemo.java│ │ ├── IvwActivity.java│ │ ├── MainActivity.java│ │ ├── OneShotDemo.java│ │ ├── SpeechApp.java│ │ ├── TtsDemo.java│ │ └── WakeDemo.java│ └── speech│├── setting││ ├── IatSettings.java││ └── TtsSettings.java│└── util│ ├── FucUtil.java│ ├── JsonParser.java│ ├── SettingTextWatcher.java│ └── XmlParser.java└── res├── drawable│ ├── cancel_button.xml│ ├── list_bg_color.xml│ ├── main_setting_btn_np.xml│ ├── ok_button.xml│ ├── setting.png│ └── setting_p.png├── drawable-hdpi│ ├── bg.png│ ├── btn_left_f.9.png│ ├── btn_left_n.9.png│ ├── btn_left_p.9.png│ ├── btn_left.xml│ ├── btn_right_f.9.png│ ├── btn_right_n.9.png│ ├── btn_right_p.9.png│ ├── btn_right.xml│ ├── button_login.xml│ ├── cancel.9.png│ ├── cancel_p.9.png│ ├── editbox.9.png│ ├── edittext_name.9.png│ ├── head.png│ ├── icon.png│ ├── login.png│ ├── login_p.png│ ├── mic_0.png│ ├── mic_1.png│ ├── mic_2.png│ ├── mic_3.png│ ├── name_left.png│ ├── name_right.png│ ├── ok.9.png│ ├── ok_d.9.png│ ├── ok_p.9.png│ ├── pane_bg.9.png│ └── superman.9.png├── drawable-ldpi│ └── icon.png├── drawable-mdpi│ └── icon.png├── layout│ ├── iatdemo.xml│ ├── isrdemo.xml│ ├── ivw_activity.xml│ ├── list_items.xml│ ├── main.xml│ ├── oneshot_activity.xml│ ├── title.xml│ ├── ttsdemo.xml│ └── wake_activity.xml├── values│ ├── colors.xml│ ├── dimen.xml│ ├── strings.xml│ └── styles.xml└── xml├── iat_setting.xml├── tts_setting.xml└── understand_setting.xml42 directories, 101 files

使用

首先可以尝试使用SDK中的DEMO, 将Sample下的mscV5PlusDemo导入到Android Studio中,

~/StudioProjects/TestCodes/mscV5PlusDemo$ lltotal 612drwxrwxr-x 5 anson anson 4096 3月 14 10:43 ./drwxrwxr-x 20 anson anson 4096 3月 14 10:37 ../-rw-rw-r-- 1 anson anson 836 3月 14 09:14 build.gradledrwxrwxr-x 4 anson anson 4096 3月 14 10:07 libs/-rw-rw-r-- 1 anson anson53 3月 14 09:14 lint.xml-rw-rw-r-- 1 anson anson 5517 3月 14 09:14 msc.cfgdrwxrwxr-x 3 anson anson 4096 3月 14 10:07 src/

PS: 需要打开android.useAndroidX=true配置, 有可能还需解决一些JDK版本不支持LAMBA语法的支持,这里略过.

运行:

一个小插曲: SDK中的DEMO运行离线识别时, DEMO居然报错了??

-03-14 10:56:34.643 18483-18483/com.iflytek.mscv5plusdemo W/System.err: java.io.FileNotFoundException: iat/common.jet-03-14 10:56:34.643 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.content.res.AssetManager.nativeOpenAssetFd(Native Method)-03-14 10:56:34.643 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.content.res.AssetManager.openFd(AssetManager.java:966)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.iflytek.cloud.util.ResourceUtil.a(SourceFile:11)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.iflytek.cloud.util.ResourceUtil.generateResourcePath(SourceFile:4)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.iflytek.mscv5plusdemo.IatDemo.getResourcePath(IatDemo.java:358)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.iflytek.mscv5plusdemo.IatDemo.setParam(IatDemo.java:326)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.iflytek.mscv5plusdemo.IatDemo.onClick(IatDemo.java:116)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.view.View.performClick(View.java:7312)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.view.View.performClickInternal(View.java:7286)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.view.View.access$3600(View.java:838)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.view.View$PerformClick.run(View.java:28242)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.os.Handler.handleCallback(Handler.java:900)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.os.Handler.dispatchMessage(Handler.java:103)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.os.Looper.loop(Looper.java:219)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.app.ActivityThread.main(ActivityThread.java:8668)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at java.lang.reflect.Method.invoke(Native Method)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1109)-03-14 10:56:34.644 18483-18483/com.iflytek.mscv5plusdemo W/System.err: java.io.FileNotFoundException: iat/sms_16k.jet-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.content.res.AssetManager.nativeOpenAssetFd(Native Method)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.content.res.AssetManager.openFd(AssetManager.java:966)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.iflytek.cloud.util.ResourceUtil.a(SourceFile:11)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.iflytek.cloud.util.ResourceUtil.generateResourcePath(SourceFile:4)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.iflytek.mscv5plusdemo.IatDemo.getResourcePath(IatDemo.java:360)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.iflytek.mscv5plusdemo.IatDemo.setParam(IatDemo.java:326)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.iflytek.mscv5plusdemo.IatDemo.onClick(IatDemo.java:116)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.view.View.performClick(View.java:7312)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.view.View.performClickInternal(View.java:7286)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.view.View.access$3600(View.java:838)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.view.View$PerformClick.run(View.java:28242)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.os.Handler.handleCallback(Handler.java:900)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.os.Handler.dispatchMessage(Handler.java:103)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.os.Looper.loop(Looper.java:219)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at android.app.ActivityThread.main(ActivityThread.java:8668)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at java.lang.reflect.Method.invoke(Native Method)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)-03-14 10:56:34.645 18483-18483/com.iflytek.mscv5plusdemo W/System.err:at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1109)

有两个文件找不到:iat/common.jetiat/sms_16k.jet

这两个文件在SDK包中的:

Android_esriat_exp1143_5a2b58b9/res/iat/total 3drwxr-xr-x 2 anson anson4096 3月 14 09:14 ./drwxr-xr-x 8 anson anson4096 3月 14 09:14 ../-rw-r--r-- 1 anson anson 9781778 3月 14 09:14 common.jet-rw-r--r-- 1 anson anson 22994400 3月 14 09:14 sms_16k.jet

找到并把这两个文件拷贝到项目相应的目录下:src/main/assets/iat/

完整文件目录结构如下:

├── build.gradle├── libs│ ├── arm64-v8a│ │ └── libmsc.so│ ├── armeabi-v7a│ │ └── libmsc.so│ └── Msc.jar├── lint.xml├── msc.cfg└── src└── main├── AndroidManifest.xml├── assets│ ├── asr│ ├── call.bnf│ ├── grammar_sample.abnf│ ├── iat│ │ ├── common.jet│ │ └── sms_16k.jet│ ├── iattest.wav│ ├── iflytek│ │ ├── recognize.xml│ │ ├── voice_bg.9.png│ │ ├── voice_empty.png│ │ ├── voice_full.png│ │ ├── waiting.png│ │ └── warning.png│ ├── ivw│ ├── layout│ │ └── ifly_layout_mnotice_image.xml│ ├── tts│ ├── userwords│ ├── wake.bnf│ ├── wake_grammar_sample.abnf│ └── xtts├── java│ └── com│ └── iflytek│ ├── mscv5plusdemo│ │ ├── AsrDemo.java│ │ ├── IatDemo.java│ │ ├── IvwActivity.java│ │ ├── MainActivity.java│ │ ├── OneShotDemo.java│ │ ├── SpeechApp.java│ │ ├── TtsDemo.java│ │ └── WakeDemo.java│ └── speech│├── setting││ ├── IatSettings.java││ └── TtsSettings.java│└── util│ ├── FucUtil.java│ ├── JsonParser.java│ ├── SettingTextWatcher.java│ └── XmlParser.java└── res├── drawable│ ├── cancel_button.xml│ ├── list_bg_color.xml│ ├── main_setting_btn_np.xml│ ├── ok_button.xml│ ├── setting.png│ └── setting_p.png├── drawable-hdpi│ ├── bg.png│ ├── btn_left_f.9.png│ ├── btn_left_n.9.png│ ├── btn_left_p.9.png│ ├── btn_left.xml│ ├── btn_right_f.9.png│ ├── btn_right_n.9.png│ ├── btn_right_p.9.png│ ├── btn_right.xml│ ├── button_login.xml│ ├── cancel.9.png│ ├── cancel_p.9.png│ ├── editbox.9.png│ ├── edittext_name.9.png│ ├── head.png│ ├── icon.png│ ├── login.png│ ├── login_p.png│ ├── mic_0.png│ ├── mic_1.png│ ├── mic_2.png│ ├── mic_3.png│ ├── name_left.png│ ├── name_right.png│ ├── ok.9.png│ ├── ok_d.9.png│ ├── ok_p.9.png│ ├── pane_bg.9.png│ └── superman.9.png├── drawable-ldpi│ └── icon.png├── drawable-mdpi│ └── icon.png├── layout│ ├── iatdemo.xml│ ├── isrdemo.xml│ ├── ivw_activity.xml│ ├── list_items.xml│ ├── main.xml│ ├── oneshot_activity.xml│ ├── title.xml│ ├── ttsdemo.xml│ └── wake_activity.xml├── values│ ├── colors.xml│ ├── dimen.xml│ ├── strings.xml│ └── styles.xml└── xml├── iat_setting.xml├── tts_setting.xml└── understand_setting.xml

再次运行, 成功!!

参考

SDK说明

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。