TTS

· TTS

· Text To Speech

· 文本转语音

· 语音播报类

· 生成播放的内容

· 实现播放

· AVSynthesizer

· 系统自带

· 创建语音集成对象

· AVSynthesizer alloc init

· 创建播放内容

· Utterance

· 创建语音对象

· voice

· 默认只能设置当前手机的设置的语言

· 创建语言

· language

· 静态方法

· 设置为中文

· 开始播报

· [synThesizer speakUtterance:utterance];

· 停止播报

· isSpeaking?

• [self.sportSpeaker stopSpeakingAtBoundary:AVSpeechBoundaryImmediate];

• 注意线程的延迟

· 创建的时候播报

· 线程阻塞

· 不能在同一个线程中同事执行两个任务

· 解决

· 放到队列里面一个一个来

· 常见于微信的评论

· 把上一个任务取消掉

· 接口

· 职责决定

· 需求决定

· 在MVC中的地位

· 不显示/是M层

· 开始运动

· sportMainVC

· 状态改变播报

· sportTrackingVC

· 单位播报

· sportMapVC

· 多个控制器交互这个模型?

· 找一个:sportTracking拥有这三个控制器的所有所需要的数据

· 迪米特法则

· 不要进行模型之间的数据传递

· 模型要和控制器打交道

你可能感兴趣的:(TTS)