Mike Simz
Mike Simz

Reputation: 4026

AVSpeechSynthesizer iOS 8 Issues

Since upgrading to xCode 6 and iOS 8 I've noticed serious issues with AVSpeechSynthesizer. Prior to the upgrade, it worked perfectly, but now, several issues have risen.

  1. Speech Utterances are playing at a much faster rate then how they were prior to upgrade.
  2. When I queue up 2 speech utterances, it simply skips over the first utterance and plays the second one first. (This only occurs on the first run of the speech synthesizer. The second run and on works properly.)

Please, any help would be greatly appreciated. Thanks in advance.

Upvotes: 2

Views: 1301

Answers (3)

deksden
deksden

Reputation: 774

For second issue, see this answer for AVSpeechUtterance - Swift - initializing with a phrase.

As for me - iOS 8 also did not support properly languages other than phone language + english.

upd dec-2014: XCode 6.2 beta2 did resolve issues with TTS in simulator and (maybe) with TTS rate.

Upvotes: 2

Jon Woodhead
Jon Woodhead

Reputation: 81

I have discovered a horrible hack to make voices that have not been specifically downloaded play. To do so I had to have two synthesizers running and get one to run through all the voices saying something. Then the other synthesizer could use any of the voices. As I say, this is a horrible hack and I cannot guarantee its reliability. In addition, it may stop working at a future varsion of ios8.

In my own apps I have chosen to make a library and get it to cycle through all the voices. Where they take more than zero time to say a phrase, they are a "good" voice and I offer it to the user. This has the advantage that it is likely to be robust against changes in the ios version.

Upvotes: 0

Jon Woodhead
Jon Woodhead

Reputation: 81

It looks to me as though a user can only hear the voice if they have specifically downloaded it in their accessibility settings. What I have not been able to do is work out how to tell which voices they have downloaded.

Upvotes: 0

Related Questions