语音播报-文字转系统声音
Posted 小课桌
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了语音播报-文字转系统声音相关的知识,希望对你有一定的参考价值。
一段文字,让系统用语音播出,使用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 }
以上是关于语音播报-文字转系统声音的主要内容,如果未能解决你的问题,请参考以下文章
文字转语音 前端 (google自带的语音合成,文字转声音)