大家好,我是RickyWei。

语音识别有很多种,今天给大家带来的是,百度语音识别 。

一. 引入编译需要的Framework

1.BDVRClient使用了录音和播放功能,因此需要在Xcode工程中引入AudioToolbox.framework和AVFoundation.framework;BDVRClient还使用到了网络状态检测功能,因此还需要引入SystemConfiguration.framework;为了生成设备UDID,需要引入Security.framework;为了支持gzip压缩,需要引入libz.1.dylib; 网络模块需要引入CFNetwork.framework;某些场景需要获取设备地理位置以提高识别准确度,需引入CoreLocation.framework。

为了支持识别控件,需要引入OpenGLES.framework,QuartzCore.framework,GLKit.framework,CoreGraphics.framework和CoreText.framework。

添加方式:右键点击Xcode中的工程文件,在出现的界面中,选中TARGETS中应用,在出现的界面中选中Build Phase->Link Binary With Libraries,点击界面中的“+”图标,在弹出的界面中选择这些Framework即可,添加完成效果图如图所示。

2.将在百度语音开房平台上下载的SDK拖入到项目工程的文件目录下

3.删除BDVRClientSample文件夹

4.如图 向项目中添加文件夹

4.1 将文件夹BDVoiceRecognitionClientResources从项目中移除 再添加

添加模式如下:

4.2 修改后文件夹目录如下:

二.引入BDVRClient的头文件

1.首先将BDVRClient提供的头文件拷贝到工程目录下,在XCode中添加此文件,引入BDVRClient提供的头文件。

2.1 如果使用识别UI,请添加如下头文件(本文只使用识别UI和接口):1.#import "BDRecognizerViewController.h"

2.#import "BDRecognizerViewDelegate.h"

2.2 如果只使用识别接口,添加如下头文件:1.#import "BDVoiceRecognitionClient.h"

2.3 如果要对音频数据或音频文件直接进行识别,请分别添加如下头文件:1.#import "BDVRRawDataRecognizer.h"

2.#import "BDVRFileRecognizer.h"

添加完后如图:

2.4 控件代码如下:

apiKey与secretKey 为百度语音识别应用给的key

#import "ViewController.h"

#import "BDRecognizerViewController.h"

#import "BDRecognizerViewDelegate.h"

#import "BDVoiceRecognitionClient.h"@interface ViewController (){

//语音界面

BDRecognizerViewController *bdrv;

NSMutableData *allData;

//参数设置 Key 密钥

BDRecognizerViewParamsObject *bdvp;

}//这是直接拉的一个text View

@property (weak, nonatomic) IBOutlet UITextView *textLable;@end

@implementation ViewController- (void)viewDidLoad {

[super viewDidLoad];

//添加一个按钮

UIButton *b = [UIButton buttonWithType:UIButtonTypeRoundedRect];

b.frame = CGRectMake(100, 400, 100, 30);

[b setTitle:@"开始识别" forState:UIControlStateNormal];

[b addTarget:self action:@selector(click) forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:b];

//主题设置

BDTheme *me = [BDTheme lightOrangeTheme];

bdrv = [[BDRecognizerViewController alloc]initWithOrigin:CGPointMake(20, 10) withTheme:me];

//设置为全屏幕

bdrv.enableFullScreenMode = YES;

bdrv.delegate = self;

bdvp = [[BDRecognizerViewParamsObject alloc]init];

//bdvp.productID 不用设置

bdvp.apiKey = @"0VoiTxX42brGtyp3P330cONO";

bdvp.secretKey = @"5b929494d330b6d57385c7539628cccd";

}-(void)click{

allData = [[NSMutableData alloc]init];

[bdrv startWithParams:bdvp];

}/**

* @brief 录音数据返回

*

* @param recordData 录音数据

* @param sampleRate 采样率

*/

- (void)onRecordDataArrived:(NSData *)recordData sampleRate:(int)sampleRate{

[allData appendData:recordData];

}/**

* @brief 返回中间识别结果

*

* @param results

*            中间识别结果

*/

- (void)onPartialResults:(NSString *)results{

self.textLable.text = results;

}//这个可以选择性删除

- (void)didReceiveMemoryWarning {

[super didReceiveMemoryWarning];

// Dispose of any resources that can be recreated.

}@end

三.添加第三方开源库

3.1     BDVRClient中使用了第三方开源库,包括TTTAttributedLabel和苹果非官方的录音API,  如果产品项目中已经包含其中的部分库,请勿重复添加,否则,请添加这三种第三方开源库到项目中,第三方库文件可以在SDK开发包下的Third-party目录下找到。由于SDK中使用了类别扩展,请在Build Setting中的Other Linker Flags中添加-ObjC。

注意:其中第三方库TTTAttributedLabel需要设置为ARC方式编译。

3.2 同时不要忘记要把JSONKit关闭 ARC

如上,为本人对百度语音识别SDK小小的理解,希望可以帮到您。

语音识别sdk for ios android,iOS百度语音识别SDK 让你的APP不在单调相关推荐

  1. android百度地图sdk定位权限,Android:使用百度地图SDK实现定位:下载SDK、申请密钥、动态获得Android权限...

    最近想实现一个打卡的功能,想到可以利用百度地图的SDK.网上有很多关于百度地图SDK定位.地图功能应用的demo,这部分倒不是很困难.但网上很多博客写的内容一般都着重于代码部分,很多下载配置和编译器设 ...

  2. Android集成百度语音识别到HelloWorld需要注意什么?(保姆级教学)

    Android集成百度语音识别怎么避坑? 首先先放一张集成失败的图(记得一定要用真机,因为它不支持VAD,我这里使用Pixel2): 首先你去百度搜索"百度语音识别",或者点击我下 ...

  3. Android studio 百度地图SDK之地图定位与运动轨迹绘制

    百度地图定位与运动轨迹 Android开发的前期准备 地图图层显示与定位 运动轨迹的简单绘制 Android开发的前期准备 Android配置在百度地图SDK官网上有详细的说明.具体可以参考官网的教程 ...

  4. android 使用百度全景sdk出现的问题

    android 使用百度全景sdk出现的问题 - - 问题:未认证的key 1.下载百度需要的一些功能包,特别是要使用全景功能,结果一直出现未认证的key也不出现全景街景 解决办法:后来使用了以前下的 ...

  5. Android 调用百度地图sdk 实现路线规划导航

    Android 调用百度地图sdk 实现路线规划导航 功能: 实现实时/需求定位 卫星地图查看 路况 周边poi检索 地点输入提示检索 驾驶 步行 公交 骑行路线规划 注:以上为实现的大概功能 ,接下 ...

  6. android开发-百度语音识别Android SDK的简单使用

    目录 1.引言 2.开发环境 3.准备开发环境 3.1安装Android studio 3.2创建百度智能云平台应用 3.1下载百度语音识别SDK 4.实现语音识别的简单案例 4.1创建Android ...

  7. Google升级Drive SDK,支持Android/iOS应用集成

    最近项目的需求有一个要实现Google Drive 云存储的功能,我现在网上找了很久啊,终于在Google 找到一个Demo模块啊,进行集成,集成到了最后出现了一个Bug,就是您的手机没有安装Goog ...

  8. 百度定位实时获取位置android,通过百度定位sdk获取实时位置

    之前有一片关于基站定位的文章,当时的测试环境是小米+移动,比较顺利. 但在实际运用中就出现问题了-联通和电信的号完全没办法定位! 最好的解决方法就是用第三方sdk来定位了. 百度的定位sdk还是很不错 ...

  9. 百度语音识别java教程,Java实现的百度语音识别功能示例

    本文实例讲述了Java实现的百度语音识别功能.分享给大家供大家参考,具体如下: 最近一直在搞java,就选择了java工程.将代码拷过去.同时复制文件"test.pcm"到工程目录 ...

最新文章

  1. RHEL7 kvm虚拟机桥接网络配置
  2. 2014目标!!!!
  3. 【视频版】有一种机房叫处女座的机房。。。
  4. 并查集杭电1272小希的迷宫
  5. [云炬创业管理笔记]第二章成为创业者讨论2
  6. 在python中操作excel
  7. ASP.NET Web API之消息[拦截]处理(转)
  8. matlab的一个疑问?
  9. 有趣的灵魂百里挑一,Linux同学你低下头干嘛,起来说下这个问题。
  10. 中南大学c语言试题期末考试,2011年中南大学C语言期末试题卷A
  11. http mjpeg 图像读取
  12. [2019上海网络赛F题]Rhyme scheme
  13. Directshow 采集-截屏和显示
  14. wxpython控件旋转_wxPython修改文本框颜色过程解析
  15. Go的goroutine
  16. 阿里云RDS数据库设置
  17. Android蓝牙系统框架和代码结构
  18. Scala——多范式, 可伸缩, 类似Java的编程语言
  19. 详解动态规划01背包问题--JavaScript实现
  20. python中写sql语句添加for循环和变量。(一种SQL引入循环的思想实现)

热门文章

  1. 前端入门之(vuex源码解析三)
  2. 2021年全球飞机标记和标牌收入大约16百万美元,预计2028年达到18百万美元
  3. eclipse中安装ant,详细
  4. lazyload ajax同步,jQuery lazyload 的重复加载错误以及修复方法
  5. Redis启动与配置【精选攻略四 】
  6. AVPlayer(二)AVAsset
  7. B47 - 基于51单片机的RFID停车计费系统
  8. Java io流实现文件分割
  9. IBM DS存储多路径
  10. java 消除魔鬼数字方法_消除Java详细信息的简便方法