我有一个文本转语音应用程序,一切都很好,但我一直在寻找声音。
在“设置/辅助功能/旁白/语音/语音”中,有一个语音列表。我想选择其中之一,例如“Susan(增强)”。我该怎么做呢?
我是文本转语音和 AVSpeechSynthesizer 的新手,所以我希望获得一些如何选择该语音的建议?
当我在“常规/设置”中尝试它时,听起来不错,但是当我选择时,我想到的是我的应用程序中的声音,听起来很不同。我尝试过的所有声音都会发生这种情况。
这是我用来朗读文本的代码:
for voice in AVSpeechSynthesisVoice.speechVoices()
{
print("\(voice.name)")
if voice.name == "Susan (Enhanced)" {
self.voiceToUse = voice
}
}
let textToSpeak = self.tvTextToSpeak.text
if (!textToSpeak!.isEmpty)
{
let speechSynthesizer = AVSpeechSynthesizer()
let speechUtterance: AVSpeechUtterance = AVSpeechUtterance(string: textToSpeak!)
speechUtterance.voice = self.voiceToUse
speechSynthesizer.speak(speechUtterance)
}
因此,如果我在 iOS 设置中使用与示例相同的文本,那么在我的应用程序中听起来会有所不同,为什么?
感谢您的澄清。
许多声音,尤其是“增强”的声音,需要先下载到设备上。在您的设备上,转到“设置”->“辅助功能”->“语音内容”->“语音”,并确保下载您要使用的语音。
下载后我就可以使用“Samantha(增强版)”了。
设置
speechUtterance.prefersAssistiveTechnologySettings = true
以使用 iPhone 中选定的语音内容。并且您不需要指定在这种情况下使用什么语音。
一个布尔值,指定辅助技术设置是否优先于该话语的属性值。