iOS 10.2 : AVSpeechSynthesizer Spews Garbage to Console
Originator: | jerrykrinock | ||
Number: | rdar://29814616 | Date Originated: | 2016 Dec 27 |
Status: | Open | Resolved: | |
Product: | iOS + SDK | Product Version: | 10.2 |
Classification: | Serious Bug | Reproducible: | Always |
Area: AVFoundation Summary: 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, SpeechBug1226.zip, also available here: https://github.com/jerrykrinock/SpeechBug1226 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 Version: iOS 10.2 (14C92) Xcode 8.2 (8C38) Notes: 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 :( http://stackoverflow.com/questions/39879275/avspeechsynthesizer-doesnt-work-on-ios10 Configuration: When running in the iOS Simulator's iPad Retina I get a little less garbage, 145 lines total.
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com 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!
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.