iOS第三方语音-讯飞语音

官方网站:http://www.xfyun.cn/

注册还要绑定微信,坑啊,识别率感觉没得微信语音好,但是微信语音审核一直不过,研究下这个

1.下载sdk,主要就下面几个文件,我主要用的是语音识别

2.导入相关的库

3.在官网上注册一个应用,得到key,这里用的我注册的key

AppDelegate中导入头文件

#import <iflyMSC/iflyMSC.h>

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中加入

NSString *initString = [[NSString alloc] initWithFormat:@"appid=%@",@"55d3e4d6"];
    [IFlySpeechUtility createUtility:initString];

4.主要分为有UI,和无UI两种IFlySpeechRecognizer(无UI),IFlyRecognizerView(有UI)

无UI代码

 _iFlySpeechRecognizer = [IFlySpeechRecognizer sharedInstance]; //设置听写模式
    [_iFlySpeechRecognizer setParameter:@"iat" forKey:[IFlySpeechConstant IFLY_DOMAIN]];
    [_iFlySpeechRecognizer setParameter: @"iat" forKey: [IFlySpeechConstant IFLY_DOMAIN]];
    [_iFlySpeechRecognizer setParameter:@"asrview.pcm" forKey:[IFlySpeechConstant ASR_AUDIO_PATH]];
    _iFlySpeechRecognizer.delegate = self;
#pragma mark - 事件监听
//录音
- (IBAction)startButtonPressed:(UIButton *)sender {
     [_iFlySpeechRecognizer startListening];
//    [_iflyRecognizerView start];
}

//停止
- (IBAction)stopButtonPressed:(UIButton *)sender {
    [_iFlySpeechRecognizer stopListening];
//    [_iflyRecognizerView start];
}
#pragma mark - IFlySpeechRecognizerDelegate

- (void)onResults:(NSArray *)results isLast:(BOOL)isLast {
    NSMutableString *resultString = [[NSMutableString alloc] init];
    NSDictionary *dic = results[0];
    for (NSString *key in dic) {
        [resultString appendFormat:@"%@",key];
    }
    NSString *strResult = nil;
    strResult =[NSString stringWithFormat:@"%@",resultString];
    NSString * resultFromJson =  [ISRDataHelper stringFromJson:resultString];

    if (!isLast){
         _label.text = resultFromJson;
    }
    NSLog(@"%@",resultString);
    NSLog(@"resultFromJson=%@",resultFromJson);
}

- (void)onEndOfSpeech {
    NSLog(@"停止录音");
}

- (void)onError:(IFlySpeechError *)errorCode {
    NSLog(@"%d",errorCode.errorCode);
    NSLog(@"%@",[errorCode errorDesc]);
}

有UI代码

if (_iflyRecognizerView == nil) {
        //UI显示居中
        _iflyRecognizerView= [[IFlyRecognizerView alloc] initWithCenter:self.view.center];

        [_iflyRecognizerView setParameter:@"" forKey:[IFlySpeechConstant PARAMS]];

        //设置听写模式
        [_iflyRecognizerView setParameter:@"iat" forKey:[IFlySpeechConstant IFLY_DOMAIN]];

    }
     _iflyRecognizerView.delegate = self;
#pragma mark - 事件监听
//录音
- (IBAction)startButtonPressed:(UIButton *)sender {
//     [_iFlySpeechRecognizer startListening];
    [_iflyRecognizerView start];
}
#pragma mark - <IFlyRecognizerViewDelegate>有界面的

- (void)onResult:(NSArray *)resultArray isLast:(BOOL) isLast {
    NSMutableString *resultString = [[NSMutableString alloc] init];
    NSDictionary *dic = resultArray[0];
    for (NSString *key in dic) {
        [resultString appendFormat:@"%@",key];
    }
    NSString *strResult = nil;
    strResult =[NSString stringWithFormat:@"%@",resultString];
    NSString * resultFromJson =  [ISRDataHelper stringFromJson:resultString];

    if (!isLast){
        _label.text = resultFromJson;
    }
    NSLog(@"%@",resultString);
    NSLog(@"resultFromJson=%@",resultFromJson);
}

其中用了一个解析返回的数据的类,可以看讯飞的demo,下面是我写的demo

百度云demo下载链接:http://pan.baidu.com/s/1nt9thKd

补:压缩包的体积好大,郁闷

时间: 2024-10-11 12:42:45

iOS第三方语音-讯飞语音的相关文章

iOS开发讯飞语音的集成

1.进入官网注册账号,登陆,注册,应用. 2,下载sdk  导入系统库. 3,关闭bitcode 4,初始化讯飞语音. NSString * initString = [[NSString alloc] initWithFormat:@"appid=%@",@"56fb34f4"]; [IFlySpeechUtility createUtility:initString]; 5.集成代码 #import <UIKit/UIKit.h> #import &

讯飞语音接口注册

1.首先申请账号 http://open.voicecloud.cn/ 一个邮箱就够了,验证邮箱后,会得到一个appid 2.然后登陆账号,到“我的语音云”---创建一个新的应用 填写应用名称iflyreminder,后选择分类,然后描述应用大致要实现的功能,选择平台,这里选择Android. 当然也有IOS WP8 JAVA FLASH WINDOWS LINUX等平台.提交后就建立成功了. 3.在“我的语音云”---我的应用下,选择刚刚创建的iflyreminder,点“立即开通服务”(默认

Android讯飞语音云语音听写学习

讯飞语音云语音听写学习         这几天两个舍友都买了iPhone 6S,玩起了"Hey, Siri",我依旧对我的Nexus 5喊着"OK,Google".但种种原因,国内的"OK,Google"并不能展示出他的全部威力,于是上网搜索国内Android平台的语音助手,个人觉得评价最好的是讯飞的--灵犀语音助手.其实讯飞语音云平台早就注册过了,并下载了相应的SDK,只是没仔细研究.今天突然想好好学习一下,以方便以后集成到自己开发的APP中,

讯飞语音接口使用

讯飞语音我就不介绍了,说实话,昨晚之前我还不知道这个东西.因为自己现在只用到了语音合成,即将一段文字转化为语音,所以在此先将语音合成的方法列出来. 首先添加框架 iflyMSC.framework, libz.dylib/libz.tbd(Xcode7.x) AVFoundation.framework SystemConfiguration.framework Foundation.framework CoreTelephoney.framework AudioToolbox.framewor

一百元的智能家居——Asp.Net Mvc Api+讯飞语音+Android+Arduino

大半夜的,先说些废话提提神 如今智能家居已经不再停留在概念阶段,高大上的科技公司都已经推出了自己的部分或全套的智能家居解决方案,不过就目前的现状而言,大多还停留在展厅阶段,还没有广泛的推广起来,有人说最大的问题是标准不统一云云,但在我看来,最大的问题在于两个方面,一个是价格,一个是操作的简便性,技术上的问题并不是阻碍智能家居推广的核心因素. 再来说说最近很火很惹人爱的微软小娜,Cortana.本人作为微软的死忠,作为一名靠.Net混饭的屌丝程序男,自然是有一部撸妹的,并且在小娜推送当天更新了手机

cocos2dx实现android的对讯飞语音的合成(语言朗读的实现)

事实上非常easy,只是有些细节须要注意. 关于讯飞语音在android上的应用,大家须要自己去下载SDK,然后依照讯飞语音提供的api在自己的android的Demo上执行成功,那东西也相当的简单. 然后,大家也须要把自己的cocos2dx项目在android 上部署起来,这些网上资料非常多,也不一一解释,兴许我也会做出相应的总结.这里不多说. OK,废话不多说,直接上代码 思路就是,通过cocos2dx的JNIhelper类实现C++对Java的调用,然后实现语音功能 废话不多说: 直接上代

聚焦语音交互,引爆智能硬件——暨讯飞语音云沙龙杭州站成功举办

5月16日,"让世界聆听我们的声音"--2014年语音云开发者沙龙暨"聚焦语音交互引爆智能硬件"在杭州贝塔咖啡成功举办. 自2013年8月以来,由讯飞语音云举办的开发者沙龙已走过北京.上海.深圳.成都.合肥.厦门等地,与1000多名开发者亲密接触,爆棚的场面.忘我的分享和激烈的讨论,让我们更加坚信:移动互联网时代,语音交互将无处不在. 2014年被称为智能硬件元年,在2014全球移动互联网大会上,智能硬件成为主角, "下一个50亿"预示着智能硬件

讯飞语音 使用步骤(针对androidStudio):语音转文字:

前言:最近做项目用到了讯飞语音,遂搞了一个简单的教程,供大家使用. 讯飞语音  使用步骤:语音转文字:   1,首先去讯飞开放平台( http://www.xfyun.cn/)注册,账号:   2,注册后登录: 3,点击选择我的语音云:   4,点击左侧边栏,创建新的应用: 5,创建好应用后:如图:复制appid: 6,下载sdk:  点击边栏左侧sdk下载中心: 选择我们所需要的功能和平台: 7,点击下载sdk,保存文件,并打开. //-----------------------------

UNITY 接讯飞语音过程总结

11:13 2017/3/141,安装问题:JDK与ECLIPSE位数一定要对应,32位对64位会出现 java was returned ....code 13的弹框错误.版本号可以不一致.2,ECLIPSE 启动后,需要设置JRE路径,否则代码提示错误.3,智能提示问题:在window -preference -java -editor下设置 .为 .abcdefghijklmnopqrstuvwxyz 17:05 2017/3/17讯飞SDK接入UNITY过程:1,导入unity的类包cl

讯飞语音听写API 未安装组件 错误码21001

在使用讯飞语音听写时,使用云端听写而不是使用本地出现这个未安装组件错误那可能就是so文件没有成功导入.文档中都是ADT环境的配置,在AndroidStudio中jar包等都和ADT差别不大,但是SO文件的导入有些区别. 在AndroidStudio将so文件导入到jniLibs文件夹中就可以了: 导入之后再次运行在其APPID配置成功之后80%就没问题了. 还有一些网上列出来的: 1.有没有使用SpeechUtility.createUtility()设置appid2.有没有将libmsc.so