Swift Clear AVSpeechSynthesizer перед тем, как говорить
Я использую код ниже, чтобы произнести строку в моем приложении.
var mySynthesizer = AVSpeechSynthesizer()
var myUtterance = AVSpeechUtterance(string: "Hello World!")
myUtterance.voice = AVSpeechSynthesisVoice(language: "en-US")
myUtterance.pitchMultiplier = 1.15
myUtterance.rate = 0.5
mySynthesizer.speak(utterance)
Если строка затем изменяется и ее просят прочитать снова, она повторяет предыдущую строку в конце новой.
Можно ли очистить AVSpeechSynthesizer перед началом?
Спасибо
1 ответ
Я получил это, чтобы работать на детской площадке. Ничего не повторяется.
//: Playground - noun: a place where people can play
import UIKit
import AVFoundation
import PlaygroundSupport
// this is needed otherwise the playground program exits before the speech is synthesized.
PlaygroundPage.current.needsIndefiniteExecution = true
var mySynthesizer = AVSpeechSynthesizer()
var helloUtterance = AVSpeechUtterance(string: "Hello World!")
helloUtterance.voice = AVSpeechSynthesisVoice(language: "en-US")
helloUtterance.pitchMultiplier = 1.25
helloUtterance.rate = 0.5
mySynthesizer.speak(helloUtterance)
let responseUtterance = AVSpeechUtterance(string: "Hey human. It's me, the world")
responseUtterance.pitchMultiplier = 0.75
responseUtterance.rate = 0.45
mySynthesizer.speak(responseUtterance)