TextToSpeechEngine

public protocol TextToSpeechEngine

Interface for a text-to-speech engine, providing methods to vocalize messages, manage playback, and configure settings. Allows applications to convert text messages into spoken words using various voices and languages.

The TextToSpeechEngine protocol defines the necessary functions and properties for implementing a text-to-speech engine. It supports multiple languages and provides functionalities to start, stop, and configure playback. Additionally, it enables setting the audio volume and changing the language of the messages.

Important

This is a Public Preview API. It may be changed or removed at any time.
  • Defines supported alphabets of the phonetic transcriptions.

    Declaration

    Swift

    var supportedAlphabets: [String] { get }
  • A delegate to respond to events that occur during playback.

    Declaration

    Swift

    var delegate: TextToSpeechEngineDelegate? { get set }
  • A locale that defines the voice’s language.

    Declaration

    Swift

    var locale: Locale { get }
  • Initializes vocalization (starts playback) of the given message.

    Declaration

    Swift

    func play(message: TTSMessage)

    Parameters

    message

    The TTSMessage that contains the text message and options defining how the message should be handled.

  • Immediately Stops any ongoing text-to-speech playback.

    Declaration

    Swift

    func stop()
  • Allows setting the audio volume of the text-to-speech playback to one of the predefined levels.

    Declaration

    Swift

    func setVolume(_ volume: SpeechVolume)

    Parameters

    volume

    One of the predefined volume levels.

  • Sets the language for the text-to-speech engine to the specified locale, if a speech voice is available for that locale.

    Throws

    TextToSpeechEngineError.unavailableLocaleInVoices if there is no speech voice for the given locale.

    Declaration

    Swift

    func changeLocale(with locale: Locale) throws

    Parameters

    locale

    The locale to change to.

  • Checks if the text-to-speech engine supports the specified locale.

    Declaration

    Swift

    static func isLanguageAvailable(for locale: Locale) -> Bool

    Parameters

    locale

    Locale used to identify the language.

    Return Value

    true if the specified language is available, false otherwise.