AVFoundation上实现语音播放暂停等等功能;
实现的demo 链接: https://github.com/helinyu/AKSpeech
基本上封装了一下内容,代码情况链接;
可以通过pod来进行管理下载:
基础知识可看:
http://www.jianshu.com/p/c55b94b467b8
1、model
model上设置一些默认的属性,这里的默认的语言是普通话,同时支持粤语;
看详细的讲解:https://tools.ietf.org/html/bcp47
mgr
typedef void(^AKSpeechTotalDelegateBlock)(AVSpeechSynthesizer *synthesizer, AVSpeechUtterance *utterance, NSRange characterRange, AKASpeechDelegateType type);
Summary:
1、有关语音的播放是在AVFaudio上的内容的AVSpeech这个类实现的;
2、主要讲里面的几个类,传递的属性,直接整合为一个model,不用过多的分类 ,外面使用是透明的,传入参数就可以了
3、对传入的参数进行必要的检查是否在合理的范围内
4、将delegate的方式转化为block的方式 ,这样一起整体调用,将有关的block的添加上一个type的属性进行判断是那个代理