语音识别功能已经是一个很普及的功能,在特定情境下,能带给人们方便的交互的体验,比如驾驶时使用语音进行唤醒手机,各类智能音响产品,语音控制智能电视等。本文主要介绍在APICloud平台使用科大讯飞的SDK快速实现语音识别功能。

一、效果预览

二、功能实现

在注册好APICloud账号后,进入控制台,添加iflyRecognition模块。iflyRecognition模块封装了科大讯飞的SDK 的语音听写、语音在线合成功能。

使用流程:
1、注册讯飞开放平台账号
2、在讯飞开放平台创建应用,并添加语音听写在线语音合成服务。
3、参考模块文档(docs.apicloud.com/Client-API/Open-SDK/iflyRecognition)相关描述,制作Android自定义模块。

从讯飞下载的合成SDK,如下图:

根据文档提示,制作的自定义模块如下图:

重新压缩后,上传到自定义模块处,添加到项目。

根据模块文档,调用接口:

1、

createUtility

创建科大讯飞引擎

createUtility({params}, callback(ret, err))

params

android_appid:

  • 类型:字符串
  • 描述:从科大讯飞开放平台得到的 appid(android端)

ios_appid:

  • 类型:字符串
  • 描述:从科大讯飞开放平台得到的 appid(iOS端)

示例:

var iflyRecognition = api.require('iflyRecognition');iflyRecognition.createUtility({ios_appid: '6041****',      // 填写讯飞平台上获得的appid         android_appid: '6041****'   // 填写讯飞平台上获得的appid }, function (ret, err) {if (ret.status) {api.alert({msg: '创建成功'});} else {api.alert({msg: "创建失败"});}});

2、

record

识别语音返回文字

record({params}, callback(ret, err))

params

vadbos:

  • 类型:数字
  • 描述:(可选项)前断点时间(静音时间,即用户多长时间不说话做超时处理),范围是0-10000单位ms
  • 默认值:5000

vadeos:

  • 类型:数字
  • 描述:(可选项)后断点时间(静音时间,即用户多长时间不说话做超时处理),单位ms,范围是0-10000
  • 默认值:5000

rate:

  • 类型:数字
  • 描述:(可选项)采样率(支持16000,8000)
  • 默认值:16000

asrptt:

  • 类型:数字
  • 描述:(可选项)返回的语句是否有标点符号,取值范围:0-无,1-有
  • 默认值:1

audioPath:

  • 类型:字符串
  • 描述:(可选项)录制的音频文件保存路径(如fs://123.pcm,一定要加后缀名;一定要加后缀名;只允许一级目录,不允许二级机二级以上的目录,例如不允许fs://test/123/pcm),不支持widget 协议。注意:在 iOS 平台上由于科大讯飞 SDK 限制,只支持 pcm 格式音频保存
  • 备注:若不传则不保存

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{status:true        //布尔类型;操作成功状态值,true|falsewordStr:           //字符串类型;识别语音后的文字eventType:'',    //字符串类型;交互事件类型://record_end:录音结束事件 (仅支持ios)//recognize_end:识别结束事件//recognize_start: 识别开始事件(仅支持Android)
}

示例:

var iflyRecognition = api.require('iflyRecognition');iflyRecognition.record({vadbos: 5000,vadeos: 2000,rate: 16000,asrptt: 1,audioPath: 'fs://myapp/speech.pcm'}, function (ret, err) {if (ret.status) {if (ret.wordStr) {let wordStr = ret.wordStr;that.data.items.push(wordStr);that.data.isOk = true;//flag = false;}} else {// api.alert({//     msg: err.msg// });}});

完整代码如下:

<template><safe-area><view class="page"><view class="content"  v-if="isOk"><view class="item" v-for="(item, index) in items"><text>{{item}}</text></view></view><view class="btm" onclick="fnrecord()"><text>开始语音识别,请说话。。。</text></view></view></safe-area>
</template>
<script>
export default {name: 'record',apiready() {//like createdvar iflyRecognition = api.require('iflyRecognition');iflyRecognition.createUtility({ios_appid: '6041****',      // 填写自己从讯飞平台上获得的appid         android_appid: '6041****'   // 填写自己从讯飞平台上获得的appid }, function (ret, err) {if (ret.status) {api.alert({msg: '创建成功'});} else {api.alert({msg: "创建失败"});}});},data() {return {isOk: false,items: []}},methods: {fnrecord() {console.log(1111)var that = this;var iflyRecognition = api.require('iflyRecognition');iflyRecognition.record({vadbos: 5000,vadeos: 2000,rate: 16000,asrptt: 1,audioPath: 'fs://myapp/speech.pcm'}, function (ret, err) {if (ret.status) {if (ret.wordStr) {let wordStr = ret.wordStr;that.data.items.push(wordStr);that.data.isOk = true;//flag = false;}} else {// api.alert({//     msg: err.msg// });}});}}
}
</script>
<style>
.page {height: 100%;width: 100%;
}.content {position: relative;top: 30px;width: 80%;height: 60%;border: 1px solid #333;background-color: #fff;
}.btm {position: absolute;bottom: 20px;left: 40px;height: 70px;width: 300px;padding: 20px 20px;border: 1px solid #eee;border-radius: 5px;background-color: rgb(51, 142, 216);
}.item {width: 90%;
}
</style>

使用APICloud 科大讯飞SDK快速实现语音识别功能相关推荐

  1. 使用APICloud MobTech平台 快速实现多平台分享功能

    做移动端开发的同学对分享功能应该很了解了,比如很多APP都有分享到微信.微博的功能,可以分享文本.图片.链接.音乐等.本文将为大家讲解如何使用APICloud & MobTech SDK 快速 ...

  2. Android Studio快速集成讯飞SDK实现文字朗读功能

    今天,我们来学习一下怎么在Android Studio快速集成讯飞SDK实现文字朗读功能,先看一下效果图: 第一步 :了解TTS语音服务 TTS的全称为Text To Speech,即"从文 ...

  3. Pdfium.Net SDK增强您的功能快速生成PDF

    Pdfium.Net SDK增强您的功能快速生成PDF PDF领导者是否想在Windows和Mac上仅用几行代码来创建,渲染,打印,保护,合并,拆分和操作PDF文件?使用 Pdfium.Net SDK ...

  4. iphone之使用讯飞语音sdk实现语音识别功能

    2.学习里面的demo简单实现了一个小的语音识别功能 先做一个简单demo,看看识别效果.注:语音识别必须联网. 所有接口必需在联网状态下才能正常使用. 效果图: #import #import &q ...

  5. Android 调用百度在线语音识别功能

    换了好几个语音转文字的工具,主要跟百度上大家的方法一样,最开始用的科大讯飞的语音,真的还蛮好用的,整体来说demo的接口比较清晰吧~准确率也很高,但是量大就要收费.所以,换了第二种,Android原生 ...

  6. 度秘语音引擎app_带有语音识别功能的APP

    实验目的: 调用讯飞api实现一个带有语音识别功能的app, 功能主要包括 1.实现语音输入转换成文本,显示在输入文本框中 2. 实现语音合成,能让文本框中的文字转换成语音输出 先跑通这样的一个dem ...

  7. Android studio调用科大讯飞的语音转文字功能

    Android studio调用科大讯飞的语音转文字功能 一.在科大讯飞的官网上注册并下载SDK 二.配置安卓项目 三.运行效果展示 一.在科大讯飞的官网上注册并下载SDK 1.首先去讯飞开放平台申请 ...

  8. 网易云信为你的互联网应用快速接入直播功能

    近年来,随着网络带宽的不断提升和智能硬件设备的高速发展,移动端视频应用如雨后春笋,包扩视频门户.视频社交.在线教育.娱乐直播.企业视频协作.新闻媒体.金融.监控以及医疗等各行业的互联网应用,均存在巨大 ...

  9. 百度api语音识别一直“无内容”_PHP开发语音识别功能

    语音识别的功能的应用场景 将语音实时识别为文字,适用于语音聊天.语音输入.语音搜索.语音下单.语音指令.语音问答等多种场景. 我们还是利用百度API,语音识别功能,给大家讲解如何使用.API主要就是要 ...

最新文章

  1. 机器学习的流程是怎样的呢?如何应用到实践中去呢?
  2. 留学申请计算机硕士个人陈述,申请美国计算机专业英文个人陈述
  3. python中可以用中文作为变量-python里能不能用中文
  4. Microsoft.Bcl.Build 1.0.10 稳定版发布
  5. “红人经济第一股”搞虚拟社交,天下秀是变道还是扩道?
  6. SAP Cloud for Customer的Account Team里的role如何配置
  7. ELK 分析 nginx access 日志
  8. 让sky Driver成为你的可见硬盘
  9. SpringBoot整合oss实现文件的上传,查看,删除,下载
  10. sql 查询所有数据库-表-表结构
  11. 看看别人用什么:最佳网管工具点评
  12. 20个常用模拟电路(嵌入式硬件篇)
  13. EPLAN入门学习笔记(一)——项目创建与基本使用方法
  14. [xctf] 江苏工匠杯easyphp
  15. matlab中分号、冒号、逗号等常用标点符号的作用
  16. Android 10适配要点,深色主题
  17. 【江枫】lvm2与powerpath的Found duplicate PV问题
  18. 如何使用FonePaw Video Converter Ultimate将 2D 电影转换为 3D
  19. js 把数字转换成万
  20. 如何用pycharm将.ui文件转换为.py文件(内含出错解决方法)

热门文章

  1. 网库“团计划”帮助企业搭乘团购快车
  2. dj java实现_OpenJFX DJ 风格 Java 桌面音乐播放器
  3. 科大讯飞 错误的码对应说明
  4. 后台业务账单和微信支付后台的订单对账步骤
  5. Linux组件被爆漏洞,程序员:过年修复漏洞
  6. 11选5经典技巧 收集的
  7. 如何正确选择合适自己的英文学习方法和材料?
  8. 地理学优质核心期刊汇总(论文投稿必备)
  9. win10安装VMware死机
  10. 福昕PDF转Word转换器4.1版本发布