码迷,mamicode.com
首页 > 其他好文 > 详细

语音播报-文字转系统声音

时间:2017-01-01 18:06:19      阅读:498      评论:0      收藏:0      [点我收藏+]

标签:导入   停止   pre   一段   ati   lang   imm   text   系统   

一段文字,让系统用语音播出,使用AVFoundation框架下的AVSpeechSynthesizer即可,非常简单。

步骤1,导入AVFoundation框架:

1 import AVFoundation

步骤2,创建语音合成器:

1     /// 语音合成器
2     private lazy var speechSynthesizer:AVSpeechSynthesizer = {
3         let speech = AVSpeechSynthesizer()
4         return speech
5     }()

步骤3,播放语音:

 1     /// 语音播报方法
 2     ///
 3     /// - Parameter text: 文本内容
 4     private func playVoiceWithText(text:String){
 5         
 6         // 停止之前没有播放完的声音(防止:语音过长,上次没有播放完)
 7         // immediate:立刻
 8         // word:播放完上次,再播放这次
 9         speechSynthesizer.stopSpeaking(at: .immediate)
10         
11         // 实例化语言 - 默认朗读英文
12         let speechUtterance = AVSpeechUtterance(string: text)
13         
14         // 指定播放语言
15         let voice = AVSpeechSynthesisVoice(language: "zh-CN")
16         speechUtterance.voice = voice
17         
18         // 播报
19         speechSynthesizer.speak(speechUtterance)
20     }

 

语音播报-文字转系统声音

标签:导入   停止   pre   一段   ati   lang   imm   text   系统   

原文地址:http://www.cnblogs.com/panda1024/p/6241234.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!