Changelog

Version 1.0.2 – April 25th, 2013

  • Fixed a few memory leaks.
  • Fixed an issue with no speech synthesis playback for long text.
  • Fixed potentially returning an error when reusing objects.
  • Fixed block methods to perform their handlers on the main thread.
  • Speech synthesis playback now supports resuming after interruptions.
  • Updated sample project to use ARC.
  • Updated voice constants.

Version 1.0.1 – February 5th, 2013

  • Fixed an issue with duplicate symbols.

Version 1.0 – February 1st, 2013

  • Fixed an issue with the audio session not getting initialized.

Version 1.0rc8 – December 7th, 2012

  • Fixed an issue to report an error on bad SSL connections.
  • Fixed -[ISSpeechRecognition addCommands] not working properly.
  • Fixed a crash on startup on devices without audio input.
  • Fixed an issue with stuck dialogs when attempting synthesis in the background.

Version 1.0rc7 – November 13th, 2012

  • Added support for block-based handlers.
  • Added Arabic Male constant.
  • Fixed an issue in which recognition would fail after synthesis.

Version 1.0rc6 – October 16th, 2012

  • Fixed an issue in which multiple speech recognitions would fail.

Version 1.0rc5 – October 9th, 2012

  • Fixed issue with canceling speech synthesis, and then starting speech recognition right away.
  • Added error code for speech recognition failing when audio input goes away.

Version 1.0rc4 – September 28th, 2012

  • Fixed an issue with sped up or slowed down audio when reusing an ISSpeechSynthesis instance.

Version 1.0rc3 – September 26th, 2012

  • Upped speech recognition quality.
  • Localized SDK.

Version 1.0rc2 – September 19th, 2012

  • Added support for armv7s.
    NOTE: As a result of building for armv7s, support for armv6 has been dropped. As a result, the iPhone 3G and 2nd Gen. iPod Touch are no longer supported, and the minimum iOS version requirement has been bumped up to iOS 4.3.

Version 1.0rc1 – August 29, 2012

  • Updated audio prompts and microphone image to fix any App Store rejection issues.
  • Fixed an issue where audio would resume even if it wasn’t playing before.

Version 1.0b7 – August 15th, 2012

  • Changed default bit rate from 64 to 48.
  • Removed adaptive bit rate.
  • Speech recognition doesn’t record audio prompts anymore.
  • Fixed memory leaks.

Version 1.0b6 – August 1st, 2012

  • Fixed autorelease pool issues.
  • Fixed an issue with the SDK giving a 303 error even though the ISSpeechSynthesis instance was released.
  • Fixed an issue where the SDK would seem to just hang.
  • Updated error messages.
  • Decreased CPU usage.

Version 1.0b5 – July 9th, 2012

  • Fixed issues where errors were sometimes incorrectly returned to the SDK from the server.
  • Fixed several memory leaks.
  • Fixed UI issues.
  • NOTE: CFNetwork.framework has been added to the SDK and now must be linked against.

Version 1.0b4 – June 4th, 2012

  • Fixed instances where started speaking and finished speaking synthesis delegate calls were happening at the same time.
  • Fixed speech recognition not timing out properly when called with -[ISSpeechRecognition listenAndRecognizeWithTimeout:error:].
  • Fixed speech synthesis where, in rare cases, towards the end of audio, tapping “Cancel” doesn’t always stop audio.
  • Fixed speed not being set properly for speech synthesis.
  • Fixed speech synthesis always returning that the user cancelled synthesis, even if they didn’t.
  • Fixed a crash with two popups being displayed.
  • Added check to make sure we have valid text before performing synthesis.
  • Renamed busy on iSpeechSDK to isBusy. Your code for calling it shouldn’t change.
  • Updated Compatibility class for better ARC detection.
  • Updated Compatibility class to properly transform ISpeechErrorDomain into iSpeechErrorDomain.

Version 1.0b3 – May 18th, 2012

  • Fixed the SDK not seeing “startRecord.wav” and throwing an exception.
  • Fixed the sample app not working on pre-iOS 5.0.

Version 1.0b2 – May 15th, 2012

  • Fixed SDK not vibrating when vibrations are turned on.
  • Fixed Compatibility Class not setting ISSpeechRecognition delegate.
  • Fixed issue with speech recognition dialog popping up and then disappearing.
  • Fixed leaks without an autorelease pool.
  • Added option to set bit rate of synthesis.
  • Added adaptive bit rate, to automatically adjust depending on network connection.
  • Updated bundle with optimized images.

Version 1.0b1 – May 1st, 2012

iSpeech SDK: The Sequel

Good news, everyone! The iSpeech SDK for iOS has been rewritten from scratch to improve a number of things.

  • Minimum OS Requirement: Due to the SDK using several newer technologies to implement certain features, it now requires iOS 4.0 or higher.
  • Segmentation: The SDK has now been split up into multiple classes to make it easier to work with.
  • Better Audio Session Management: In old versions of the SDK, the AudioSession would get activated right when you initialized the SDK, shutting down any other audio. Now, the audio session is only activated when it’s needed, and then shut down when it’s not, which results in a better experience for the user.
  • Easier Configuration: It’s now easier to configure the SDK, and setup a specific synthesis instance with certain properties.
  • Fewer Dependencies: We’ve dramatically reduced the number of frameworks you need to link against to three: AudioToolbox.framework, SystemConfiguration.framework, and Security.framework.

Version 0.9.2 – Jan. 19, 2012

  • Fixed recognition lists so that they actually work.
  • Fixed an issue with speech synthesis on Verizon 3G.

Version 0.9.1 – Nov. 2, 2011

  • The SDK is now provided as a universal binary, which means with one file, you can compile for both the Simulator and for Device. Xcode will strip out anything it doesn’t need when building for Release.
  • Added iOS 3 support to the SDK for those that require it.
  • Added error codes. Now every error code has a enum value for easier code reading of error status codes.
  • Added error parameter to several methods. Now, if something goes wrong, and a method returns NO, if you pass in a pointer to an error object, you’ll get error details back out of the method.
  • Added network checking. The SDK will now check to see if it can connect to the Internet. If it can’t, whichever method you call will return NO, and you’ll get the kISpeechErrorCodeNoInternetConnection error code from the NSError reference you pass in. As a result, you’ll need to now link against SystemConfiguration.framework.
  • Added input checking. If no mic is available (such as on a 2nd gen. iPod touch, any methods that start speech recognition will return NO, and you’ll get the kISpeechErrorCodeNoInputAvailable error code from the NSError reference you pass in.
  • Added speed. Now you can set the speed of speech synthesis.
  • Added locale. Now you can set the locale for speech recognition, allowing you to recognition different languages.
  • Added model. Now you can specify a model for the SDK, if your API Key supports that.
  • ISpeechStopListenStartRecognize will now not return NO if you’re doing a timed listen, and will in fact stop listening and start recognizing.
  • Added extra params. Now, if needed, you can send extra parameters to the server. Use only if directed.
  • Delegates will now be notified if the user presses “Cancel” on any of the dialogs. They will get an error whose code is kISpeechErrorCodeUserCancelled.