美文网首页
IOS百度语音实现过程

IOS百度语音实现过程

作者: 烈酒暖心i | 来源:发表于2017-08-22 14:49 被阅读0次

    先配置我们需要的文件,如图:

    需要到导入的控件

    将整个SDK包先复制到工程,然后再add file的方式加入工程    create group

    将主题删除引用,再重新加入,create folder references (记住删除SDK包中的demo)

    也需要我们加入JSONKit (记住关闭ARC)

    百度语音目前最新版的1.6.2少了CoreTelephony.framework类库、会报5个错,加上就好.

    之引入BDVRClient的头文件后就是我们需要实现的代码  可以直接复制.(注意括号已经方法名称)

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

    如果使用识别UI,请添加如下头文件:

    #import "BDRecognizerViewController.h"

    #import "BDRecognizerViewDelegate.h"

    如果只使用识别接口,添加如下头文件:

    #import "BDVoiceRecognitionClient.h"

    如果要对音频数据或音频文件直接进行识别,请分别添加如下头文件:

    #import "BDVRRawDataRecognizer.h"

    #import "BDVRFileRecognizer.h"

    初始化      

    @interface ViewController () <BDRecognizerViewDelegate>//遵守一个代理

    {               //语音界面

                     BDRecognizerViewController *bdrv;

                      NSMutableData *allData;

                   //参数设置

                   BDRecognizerViewParamsObject *bdvp;

    }

    - (void)viewDidLoad

    {

    [super viewDidLoad];

    //主题设置

    BDTheme *me = [BDTheme  lightBlueTheme];

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

    //全屏模式

    bdrv.enableFullScreenMode = YES;

    bdrv.delegate = self;

    bdvp = [[BDRecognizerViewParamsObject alloc]init];

    bdvp.apiKey = @"RiYYprli930gKNAt9MgWt4wG";

    bdvp.secretKey = @"e861c0b1c67b75c1e23ce55b2c5e3732";

    Lab = [[UILabel alloc]initWithFrame:CGRectMake(100, 500, 200, 39)];

    [self.view addSubview:Lab];

    }

    一个按钮点击方法

    - (IBAction)ShiBie:(id)sender

    {

    allData = [[NSMutableData alloc] init];

    [bdrv  startWithParams:bdvp];

    }

    //录音返回

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

    {

    [allData appendData:recordData];

    }

    这个方法是  返回我们使我们语音是识别出的内容 可以用一个UILabel标签展示一下(不需要的也可以直接忽略这一个方法)

    - (void)onEndWithViews:(BDRecognizerViewController *)aBDRecognizerViewController withResults:(NSArray *)aResults

    {

    Lab.text =[[[[aResults lastObject]lastObject] allKeys] lastObject];

    }

    相关文章

      网友评论

          本文标题:IOS百度语音实现过程

          本文链接:https://www.haomeiwen.com/subject/itkldxtx.html