iOS 10.2 : AVSpeechSynthesizer Spews Garbage to Console

Number:rdar://29814616 Date Originated:2016 Dec 27
Status:Open Resolved:
Product:iOS + SDK Product Version:10.2
Classification:Serious Bug Reproducible:Always

It seems that using an AVSpeechSynthesizer in any way (I tried several) in iOS 10.2 results in a lot of garbage being spewed to the system or debug console.  It happens (1) when initialized and (2) during and immedidately after the first utterance.

Steps to Reproduce:
1.  Connect an iPad Retina, or probably any iOS device, to your Mac.
2.  Build and run the attached project,, also available here:

Expected Results:
In Debug Console, only entries from my NSLog() statements.

Actual Results:
When running this project on my actual iPad Retina Mini, I get

- 9 lines of garbage upon running the initializer `AVSpeechSynthesizer()`
- 18 lines of garbage upon calling `speak(_ utterance: AVSpeechUtterance)` for the first time
- 149 lines of garbage after all is said and done

iOS 10.2 (14C92)
Xcode 8.2 (8C38)

As you can see from this Stack Overflow article, some developers are reporting that, in addition to the garbage, no sound is produced.  I have seen that problem in my actual app, with the first utterance after the speech synthesizer was initialized.  I was able to work around that by rearranging the code.  I don't know exactly what I did, but it will probably be back to bite me if this bug is not fixed first :(

When running in the iOS Simulator's iPad Retina I get a little less garbage, 145 lines total.


Whatever is going on apparently also affects performance, because executing the initializer AVSpeechSynthesizer() blocks for 1.2 seconds in iPhone 5 simulator and 1.6 seconds in my actual iPad Mini.

Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!