博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS:百度长语音识别具体的封装:识别、播放、进度刷新
阅读量:6097 次
发布时间:2019-06-20

本文共 879 字,大约阅读时间需要 2 分钟。

一、介绍

以前做过讯飞语音识别,比较简单,识别率很不错,但是它的识别时间是有限制的,最多60秒。可是有的时候我们需要更长的识别时间,例如朗诵古诗等功能。当然讯飞语音也是可以通过曲线救国来实现,就是每达到60秒时识别停止就立即重新开启,每次结束拼接录音。这么做,显然是麻烦的,百度语音解决了这个问题,它最近上线了长语音识别技术,可以不受时间限制,还是非常棒的。这次,我就专门抽成一个工具类使用,包括语音识别,录音拼接,录音播放、进度刷新,具体如何集成SDK看官方文档,我就不废话了,直接介绍如何使用我的这个工具类。

 

 

二、依赖

因为语音录制格式是pcm格式的,我使用lame静态库将其转成了mp3格式。

下载路径参考我的博客,有具体的介绍:

 

 

三、代码

SJVoiceTransform.h

 
View Code

SJVoiceTransform.m

 
View Code

BDHelper.h

 
View Code

BDHelper.m

 
View Code

 

 

四、注意

百度语音SDK只支持armv6、armv7的真机架构,不支持x86_64模拟器架构。

 

 

五、如何在模拟器下开发

办法:

1、首先将涉及到百度语音的代码全部采用宏定义注释掉,如:

#if !TARGET_IPHONE_SIMULATOR// 语音相关调用// self.asrEventManager = [BDSEventManager createEventManagerWithName:BDS_ASR_NAME];// 其他调用#endif

2、(重点要处理的地方)切换到模拟时,将libBaiduSpeechSDK.a静态包从Linked Frameworks and Librarise删掉(切换到真机时,再将libBaiduSpeechSDK.a导入进来就行)

 

程序猿神奇的手,每时每刻,这双手都在改变着世界的交互方式!
本文转自当天真遇到现实博客园博客,原文链接:http://www.cnblogs.com/XYQ-208910/p/8185226.html
,如需转载请自行联系原作者
你可能感兴趣的文章
如何在Ubuntu 16.04上将Redis服务器设置为PHP的会话处理程序
查看>>
固态硬盘价格大跳水,再不入手又要涨了!
查看>>
css隐形的空隙(inline的坑)
查看>>
深圳美景品牌策划机构:美景“快传播”赢得法国最大乳业合作社赞誉
查看>>
nginx服务
查看>>
Android中使用自定义的字体
查看>>
linux 中文件类型和颜色的区分
查看>>
cocosPods 常见使用步骤
查看>>
对你同样重要的非技术贴,8个方法让你的老板认可你
查看>>
MLP、RBF、SVM神经网络比较
查看>>
最常用的命令
查看>>
mysql数据库备份小记录
查看>>
WordPress 手机客户端生成系统 NextApp 配置指南
查看>>
字典 dict
查看>>
iOS 9 sdk bitcode
查看>>
windows上一键自动安装zabbix-agent
查看>>
SFB 项目经验-50-Lync-And-Cisco-功能-产品-对比
查看>>
iOS OC 异常处理
查看>>
树形菜单文档 - layui.tree-示例
查看>>
array_filter
查看>>