Documentation

Development

User Acquisition

Monetization

Industry

Vivox Unreal SDK

Vivox Unreal SDK

Vivox
​
​
Vivox Unreal SDK
  • Overview
  • Get started
  • Release notes
  • Developer guide
    • Set up your project
    • Unity Authentication Service in Unreal
    • Create voice and text channels
    • Messaging
    • Audio management
    • Muting
    • In-game moderation
    • Android app development
    • iOS app development
    • Server-side recording
    • Speech-to-text audio transcription
    • Text-to-speech
      • Text-to-speech voice options
      • Text-to-speech destinations
      • Inject a text-to-speech message
      • Queue a text-to-speech message
      • Cancel a text-to-speech message
      • Text-to-speech events
      • Get raw audio of synthesized speech
      • Use text-to-speech for incoming messages
    • Real-time recording
    • Transmission
    • Troubleshooting
  • Tutorials
  • Reference
  1. Vivox Unreal SDK documentation
  2. Text-to-speech

Text-to-speech destinations

Choose destinations for text-to-speech output.
Read time 1 minute
Last updated 8 months ago

Text-to-speech (TTS) messages are injected to destinations. Destinations determine two factors: output and mechanism.
  • Output is where the synthesized speech plays to and decides who hears the TTS message. Each destination uses one of the following outputs:
    • Local Playback - messages injected here play back locally on the user’s default render device (for example, loudspeakers or headphones).
    • Remote Transmission - messages injected here are sent to remote participants in connected sessions according to transmission policies (the same sessions that basic voice transmits to).
    • Local and Remote - messages injected here are simultaneously injected to Local Playback and Remote Transmission.
  • Mechanism is how new messages are handled when there is an ongoing message playing. Each destination uses one of the following injection mechanisms:
    • Simple - destinations using this mechanism mix together new messages and ongoing messages to play them concurrently.
    • Queue - destinations using this mechanism queue new messages in the order they are sent. When the ongoing message finishes playing, this mechanism auto-triggers the message that is next in line.
    • Replace - destinations using this mechanism cancel any ongoing message and then replaces it with the new message.
You can inject synthesized speech into the following destinations:
Note
Most destinations are independent and do not affect the behavior of any other destinations. However, the two queued destinations involving remote transmission share a queue.
  • Remote Transmission
    • Enum value:
      TTSDestination::RemoteTransmission
    • Output: Remote Transmission
    • Mechanism: Simple
  • Local Playback
    • Enum value:
      TTSDestination::LocalPlayback
    • Output: Local Playback
    • Mechanism: Simple
  • Remote Transmission with Local Playback
    • Enum value:
      TTSDestination::RemoteTransmissionWithLocalPlayback
    • Output: Local and Remote
    • Mechanism: Simple
  • Queued Remote Transmission
    • Enum value:
      TTSDestination::QueuedRemoteTransmission
    • Output: Remote Transmission
    • Mechanism: Queue
    • Caveat: Shares queue with Queued Remote Transmission with Local Playback.
  • Queued Local Playback
    • Enum value:
      TTSDestination::QueuedLocalPlayback
    • Output: Local Playback
    • Mechanism: Queue
  • Queued Remote Transmission with Local Playback
    • Enum value:
      TTSDestination::QueuedRemoteTransmissionWithLocalPlayback
    • Output: Local and Remote
    • Mechanism: Queue
    • Caveat: Shares queue with Queued Remote Transmission
  • Screen Reader
    • Enum value:
      TTSDestination::ScreenReader
    • Output: Local Playback
    • Mechanism: Replace
You can obtain the state and content of all messages that are playing or are enqueued in any destination by using
ITextToSpeech::GetMessages(TTSDestination Destination)
. Queued destinations return their
TArray<ITTSMessage\*>
in queue order, and others in the order that speech was injected.

Copyright © 2026 Unity Technologies
LegalPrivacy PolicyCookiesDocumentation Terms of UseDo Not Sell or Share My Personal InformationYour Privacy Choices (Cookie Settings)

"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S and elsewhere (more info here). Other names or brands are trademarks of their respective owners.

Some pages are machine-translated for convenience, and may contain inaccuracies. In the event of conflicting information, the English version is authoritative.


    Report a problem with this page
    ​
    ​