SpeechFramework框架简介(二)

要开发语音识别,首先要获取系统权限

捕获.PNG

通过requestAuthorization来获取权限


#import <Speech/Speech.h>    
    //1.创建要识别的语音    
    NSLocale *local =[[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"];    
     //2.初始化语音识别对象    
    SFSpeechRecognizer *sfr =[[SFSpeechRecognizer alloc] initWithLocale:local];    
         
    //3.加载资源文件或者通过录音的方式来    
    NSURL *url =[[NSBundle mainBundle] URLForResource:@"*.mp3" withExtension:nil];    
    //4.将资源包中获取的url(录音文件的地址)传递给 request对象    
    SFSpeechURLRecognitionRequest *res =[[SFSpeechURLRecognitionRequest alloc] initWithURL:url];    
      //5.发送一个请求    
    [sfr recognitionTaskWithRequest:res resultHandler:^(SFSpeechRecognitionResult * _Nullable result, NSError * _Nullable error) {    
        if (error!=nil) {    
            NSLog(@"语音识别失败啦,%@",error);    
        }    
        else    
        {    
            //解析正确    
            NSLog(@"---%@",result.bestTranscription.formattedString);    
        }    
    }];    

也可通过代理方法来识别是否成功


//当开始检测音频源中的语音时首先调用此方法
-(void)speechRecognitionDidDetectSpeech:(SFSpeechRecognitionTask *)task;

//当识别出一条可用的信息后 会调用(void)speechRecognitionTask:(SFSpeechRecognitionTask *)task didHypothesizeTranscription:(SFTranscription *)transcription;

//识别完成
- (void)speechRecognitionTask:(SFSpeechRecognitionTask *)task didFinishRecognition:(SFSpeechRecognitionResult *)recognitionResult;

//开始处理语音,不再接受输入
(void)speechRecognitionTaskFinishedReadingAudio:(SFSpeechRecognitionTask *)task

//取消
(void)speechRecognitionTaskWasCancelled:(SFSpeechRecognitionTask *)task;

//语音识别任务完成时被调用
- (void)speechRecognitionTask:(SFSpeechRecognitionTask *)task didFinishSuccessfully:(BOOL)successfully;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,216评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,337评论 19 139
  • 其实每个人都想有一个不一样的青春,想在自己最美的年华遇到对的那个人。想在青春的岁月里挥洒汗水,肆意妄为。 ...
    梦之琼瑶阅读 2,755评论 0 1
  • 20170707,5,2628,0155。
    5adc213b1d02阅读 1,664评论 0 0
  • 快一年了,我一直坚信我的床底下有些什么。 肯定不是老鼠之类的,可我也不知道它到底是什么。 可我从来没有告诉过别人,...
    阿尢蜜蟹酱阅读 2,312评论 2 5