对于文本语音转换-我使用了“语音框架”,并使用link创建了演示。
但是获取文本后,我想说文本字段文本。
var synth = AVSpeechSynthesizer()
var myUtterance = AVSpeechUtterance(string: textfield.text)
myUtterance.rate = 0.3
synth.speak(myUtterance)
但以上代码无法正常工作。
在这里,我附加了演示项目链接:demo project link
最佳答案
您的代码有效,但是您听不到声音,因为在开始录制时,您将audioSession的类别设置为“AVAudioSessionCategoryRecord”。此类别用于录制音频,并使播放音频静音。然后,您必须更改此设置才能听到任何声音。
尝试这个:
let audioSession = AVAudioSession.sharedInstance() //2
do {
try audioSession.setCategory(AVAudioSessionCategorySoloAmbient)
try audioSession.setMode(AVAudioSessionModeSpokenAudio)
try audioSession.setActive(true, with: .notifyOthersOnDeactivation)
} catch {
print("audioSession properties weren't set because of an error.")
}
myUtterance = AVSpeechUtterance(string: textView.text!)
myUtterance.rate = 0.3
synth.speak(myUtterance)
关于ios - 文字转语音不起作用,使用文字转语音获取文字时,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45862745/