文档

​
​

Development

User Acquisition

Monetization

工业

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

Use text-to-speech for incoming messages

How to synthesize incoming text messages as speech.
阅读时间1 分钟
最后更新于 8 个月前

To use text-to-speech (TTS) to read incoming messages, use the
Speak()
function in the message event handler. We recommend that you use the
TTSDestination::QueuedLocalPlayback
destination because it ensures that messages are queued and that they only play locally.
  • When a text message is received in a channel, the
    IChannelSession::EventTextMessageReceived
    event is raised.
  • When a direct message is received in a channel, the
    ILoginSession::EventDirectedTextMessageReceived
    event is raised.
The following code is an example of how to use TTS for channel messages:
MyChannelSession->EventTextMessageReceived.AddLambda([MyLoginSession](const IChannelTextMessage &Message){ // If the text message received is not from me... if (Message.Sender() != MyLoginSession->LoginSessionId()) { // Check if optional display name is set. FString DisplayName = Message.Sender().DisplayName(); if (DisplayName.IsEmpty()) { DisplayName = "Anonymous"; } // This queues the message and lets the user know who sent it. // NB: the colon (:) inserts a slight pause before subsequent text. FString Text = DisplayName + " says: " + Message.Message(); MyLoginSession->TTS().Speak(Text, TTSDestination::QueuedLocalPlayback); }});
注意
To only read text messages from other users in a channel, compare the current user’s AccountId with the IChannelTextMessage::Sender() value.

Copyright © 2026 Unity Technologies
法律信息隐私政策CookiesDocumentation Terms of Use请勿出售或分享我的个人信息您的隐私选择(Cookie 设置)

“Unity”、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属公司在美国和其他地方的商标或注册商标(此处查看更多信息)。其他名称或品牌是其各自所有者的商标。

为方便起见,一些页面是机器翻译的,可能包含不准确的内容。如有信息不一致的情况,以英文版本为准。


    报告此页面的问题