对文本转语音消息排队

有些目标会提供内置排队系统。如果注入新消息时正在播放消息,则将新消息放入队列。正在进行的消息播放完成后,队列中的下一条消息将自动开始播放。

// Start playing speech as soon as it is synthesized.
VivoxService.Instance.TextToSpeechSendMessage("1st Message.", TextToSpeechMessageType.QueuedLocalPlayback);

// After the first message finishes playback, this message starts.
VivoxService.Instance.TextToSpeechSendMessage("2nd Message.", TextToSpeechMessageType.QueuedLocalPlayback);

队列在 TextToSpeechMessageType.QueuedRemoteTransmissionTextToSpeechMessageType.QueuedRemoteTransmissionWithLocalPlayback 之间共享。目标 TextToSpeechMessageType.QueuedLocalPlayback 具有自己的队列。

目标队列可以持有 10 个已排队消息以及在主动播放的消息。如果在目标队列已满时添加消息,Vivox SDK 将放弃该消息并引发 InvalidOperationException (VxErrorTTSDestinationQueueIsFull)。在此情况下,不引发任何文本转语音相关事件。