Использование двух экземпляров AVSpeechSynthesizer одновременно - PullRequest
1 голос
/ 11 апреля 2019

Я хотел бы использовать два экземпляра AVSpeechSynthesizer одновременно.

let firstSynthesizer = AVSpeechSynthesizer()
let secondSynthesizer = AVSpeechSynthesizer()

func foo() {
   let utterance = AVSpeechUtterance(string: "Foo Foo Foo Foo Foo")
   utterance.rate = 0.4
   utterance.voice = AVSpeechSynthesisVoice(language: "en-US")
   firstSynthesizer.speak(utterance)
}

func bar() {
   let utterance = AVSpeechUtterance(string: "Bar Bar Bar Bar Bar")
   utterance.rate = 0.4
   utterance.voice = AVSpeechSynthesisVoice(language: "en-US")
   secondSynthesizer.speak(utterance)
}

Когда я звоню foo() и bar(), тексты читаются не одновременно, а один за другим.

1 Ответ

1 голос
/ 07 мая 2019

Я хотел бы использовать два экземпляра AVSpeechSynthesizer одновременно.

Это определенно невозможно в iOS 12, за один раз обрабатывается только один синтез речи .

Однако аудиосеанс может воспроизводиться вместе с синтезом речи.

...