我正在尝试Apple的语音合成,我想看看Alex设备上的Alex声音是如何发声的。
有没有办法通过Swift游乐场访问Alex语音?
答案 0 :(得分:2)
是的,如果添加这两行,它将起作用。
import PlaygroundSupport
PlaygroundPage.current.needsIndefiniteExecution = true
由于语音合成器是异步代码,因此" needsIndefiniteExecution"允许执行在到达游乐场的顶级代码结束后继续。反过来,这为线程和回调提供了执行的时间。 (from Apple's documentation of Playground Support)
示例:
import AVFoundation
import PlaygroundSupport
PlaygroundPage.current.needsIndefiniteExecution = true
let synth = AVSpeechSynthesizer()
let speech = AVSpeechUtterance(string: "Hello, World!")
speech.voice = AVSpeechSynthesisVoice(language: "en-US")
synth.speak(speech)