更新记录
1.0.0(2026-03-31)
- 新版发布支持iOS、Android
平台兼容性
uni-app(4.81)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| √ | √ | × | × | √ | √ | √ | √ | × |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| × | × | × | × | × | × | × | × | × | - | × | × |
uni-app x(4.81)
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| - | - | √ | √ | × | - |
科大讯飞离线语音识别、离线中引文听写UTS插件
开发文档
AIkit 离线语音听写 Android SDK 文档, 错误码查询, 科大讯飞控制台创建应用获取, 离线语音听写(新版)获取appid/APISecret/APIKey,
插件主要功能
- 离线语音识别---iOS+Android
- 打包时iOS超包可先将yt-recognition/app-ios/Resources/AEEResource.bundle中的LSTMLM_ED和MLP_YN_ED文件先删除再打自定义基座,打完基座再把这两个文件放回yt-recognition/app-ios/Resources/AEEResource.bundle中,再运行自定义基座,Android打包超限不能按此操作(亲测Android删文件打包会有问题)
- 科大讯飞离线合成插件可前往--离线合成插件
特别提醒
- 购买本插件前,请先试用、请先试用、请先试用,并充分自测确认满足需求之后再行购买。虚拟物品一旦购买之后无法退款;
- 如有使用上的疑问、bug,可以进交 流 群联系作者;
- 作者可承接各种插件定制;
- 请在合法范围内使用,若使用本插件做非法开发,本方概不负责;
- 结合文档和示例demo集成使用;
- 测试需要打自定义基座,测试需要打自定义基座,测试需要打自定义基座。
插件说明
插件基于科大讯飞离线语音听写(新版)SDK封装,AIkit离线语音听写官方文档
插件使用
1、 引入插件
插件首页点击“试用”按钮,选择需要使用的项目,选完点击确认-->弹框点击“继续导入HBuilderX”-->再次选择需要试用的项目-->确认,会在项目根目录下生成uni_modules/yt-aikit,至此插件引入成功。 下列文档都是以uniapp为例介绍,文档最底下将给出uniapp-x的完整示例代码。
<!--打基座前现在需要使用的页面导入插件,否则插件不会打包进项目-->
import * as RecognitionManager from '@/uni_modules/yt-recognition'
2、初始化插件(离线和成设备第一次初始化需要联网,后续初始化不需要网络,但每次启动后都需要先初始化才能合成)
RecognitionManager.initSDK({
appId: "66*****68",
apiKey: "4351c9*******991c32fb2",
apiSecret: "NW*******OWIz",
ability: "ee62fa27c",
authType: 0,
authInterval: 300,
refreshFile: false,
authHandler: (res) => {
console.log(res)
}
});
| 参数 | 参数类型 | 参数说明 | 是否必传 |
|---|---|---|---|
| appId | string | appid可在控制台查看(科大讯飞创建应用后得到) | 是 |
| apiKey | string | apiKey可在控制台查看(科大讯飞创建应用后得到) | 是 |
| apiSecret | string | apiSecret可在控制台查看(科大讯飞创建应用后得到) | 是 |
| authInterval | number | 在线授权校验间隔时长,默认为300s,可自定义设置,最短为60s,单位秒 | 否 |
| authType | number | 离线授权类型(0或1),0-->(默认)设备级授权(DEVICE)和 1-->应用级授权(APP) | 否 |
| ability | string | 能力ID | 固定传“ee62fa27c” |
| refreshFile | bool | 是否更新语音文件,默认false,更新后会把assets/xtts(修改assets文件需重新打基座)文件覆盖工作目录下的文件 | 否 |
| authHandler | function | 授权(初始化)回调,内容包含错误码,错误码查询 | 是 |
2、逆初始化
RecognitionManager.releaseSDK();
3、离线语音识别
RecognitionManager.startDictation({
onResult: (res) => {
console.log(`中英文听写回调多次触发:${res}`)
},
onFinalResult: () => {
console.log('识别结束')
},
onError: (error) => {
console.log(`中英文听写报错:${error}`);
}
})
4、停止语音识别
RecognitionManager.stopDictation()
5、离线语音识别参数设置(识别前设置有效)
RecognitionManager.dictationConfigure({
lmLoad: true,//加载二遍资源 bool true:加载, false:不加载 默认:true 非必填
vadLoad: false,//加载VAD资源 bool true:加载, false:不加载 默认:false 非必填
puncLoad: false,//加载标点资源 bool true:加载, false:不加载 默认:false 非必填
numLoad: false,//加载数字规整资源 bool true:加载, false:不加载 默认:false 非必填
postprocOn: false,//是否开启后处理 bool true:开启, false:不开启 默认:false 非必填
lmOn: false,//开启二遍 bool true:开启, false:不开启 默认:false 非必填
vadOn: false,//是否开启vad功能 bool true:开启, false:不开启 默认:false 非必填
vadSpeechEnd: 200,//vad结束参数 最小值:0, 最大值:999999 默认:200 vad后端点检测超时时间 非必填
vadResponsetime: 1000,//vadResponsetime 最小值:0, 最大值:999999 vad前端点检测超时时间 非必填
htkNeed: true,//htkNeed 是否输出htk结果 true:输出, false:不输出 默认:true 非必填
readableNeed: true,//是否输出readableNeed true:输出, false:不输出 默认:true 非必填
dialectType: 0,//方言参数。0-普通话/台湾,1-四川,2-粤语,3-长沙,4-东北,5-甘肃,6-贵州,7-河北,8-合肥,9-河南,10-客家,11-闽南,12-南昌,13-南京,14-宁夏,15-山西,16-山东,17-上海/苏州,18-太原,19-天津,20-皖北,21-武汉,22-云南 非必填
pgsNeed: true,//是否输出pgs结果 bool true:输出, false:不输出 否 true 非必填
plainNeed: true,//是否输出plain结果 bool true:输出, false:不输出 否 true 非必填
vadNeed: true,//是否输出vad结果 bool true:输出, false:不输出 否 true 非必填
} )
uniapp-x完整示例
uniapp 完整示例
<template>
<view class="content">
<navigator url="/pages/index/index"
style="height: 80rpx;width: 500rpx;margin: 20rpx;display: flex;align-items: center;justify-content: center;background-color: aquamarine;">
跳转</navigator>
<view class="btn" @click="initSDK">初始化</view>
<view class="btn" @click="unInitSDK">逆初始化</view>
<view class="btn" @click="startDictation">开始语音识别</view>
<view class="btn" @click="stopDictation">停止语音识别</view>
<view class="btn" @click="dictationConfigure">离线识别参数配置</view>
</view>
</template>
<script>
import * as RecognitionManager from '@/uni_modules/yt-recognition'
export default {
data() {
return {
}
},
onLoad() {
},
methods: {
//初始化SDK
initSDK() {
RecognitionManager.initSDK({
appId: "66****68",//换成自己的
apiKey: "4351*******91c32fb2",//换成自己的
apiSecret: "NWFk*******Y2EzOWIz",//换成自己的
ability: "ee62fa27c",
authType: 0,
authInterval: 300,
refreshFile: false,
authHandler: (res) => {
console.log(res)
}
});
},
//逆初始化SDK
unInitSDK() {
RecognitionManager.releaseSDK();
},
dictationConfigure() {
RecognitionManager.dictationConfigure({
lmLoad: true, //加载二遍资源 bool true:加载, false:不加载 默认:true 非必填
vadLoad: false, //加载VAD资源 bool true:加载, false:不加载 默认:false 非必填
puncLoad: false, //加载标点资源 bool true:加载, false:不加载 默认:false 非必填
numLoad: false, //加载数字规整资源 bool true:加载, false:不加载 默认:false 非必填
postprocOn: false, //是否开启后处理 bool true:开启, false:不开启 默认:false 非必填
lmOn: false, //开启二遍 bool true:开启, false:不开启 默认:false 非必填
vadOn: false, //是否开启vad功能 bool true:开启, false:不开启 默认:false 非必填
vadSpeechEnd: 200, //vad结束参数 最小值:0, 最大值:999999 默认:200 vad后端点检测超时时间 非必填
vadResponsetime: 1000, //vadResponsetime 最小值:0, 最大值:999999 vad前端点检测超时时间 非必填
htkNeed: true, //htkNeed 是否输出htk结果 true:输出, false:不输出 默认:true 非必填
readableNeed: true, //是否输出readableNeed true:输出, false:不输出 默认:true 非必填
dialectType: 0, //方言参数。0-普通话/台湾,1-四川,2-粤语,3-长沙,4-东北,5-甘肃,6-贵州,7-河北,8-合肥,9-河南,10-客家,11-闽南,12-南昌,13-南京,14-宁夏,15-山西,16-山东,17-上海/苏州,18-太原,19-天津,20-皖北,21-武汉,22-云南 非必填
pgsNeed: true, //是否输出pgs结果 bool true:输出, false:不输出 否 true 非必填
plainNeed: true, //是否输出plain结果 bool true:输出, false:不输出 否 true 非必填
vadNeed: true, //是否输出vad结果 bool true:输出, false:不输出 否 true 非必填
})
},
startDictation() {
RecognitionManager.startDictation({
onResult: (res) => {
console.log(res)
},
onFinalResult: () => {
console.log('识别结束')
},
onError: (error) => {
console.log(error);
}
})
},
stopDictation() {
RecognitionManager.stopDictation()
}
}
}
</script>
<style>
.content {
display: flex;
width: 750rpx;
height: 100%;
align-items: center;
background-color: antiquewhite;
flex-direction: column;
}
.btn {
display: flex;
width: 500rpx;
height: 80rpx;
align-items: center;
justify-content: center;
background-color: aquamarine;
margin: 20rpx 0;
}
</style>

收藏人数:
购买源码授权版(
试用
赞赏(0)
下载 305
赞赏 2
下载 11452456
赞赏 1898
赞赏
京公网安备:11010802035340号