对文本转语音消息排队
有些目标会提供内置排队系统。如果注入新消息时正在播放消息,则将新消息放入队列。正在进行的消息播放完成后,队列中的下一条消息将自动开始播放。
// 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.QueuedRemoteTransmission
与 TextToSpeechMessageType.QueuedRemoteTransmissionWithLocalPlayback
之间共享。目标 TextToSpeechMessageType.QueuedLocalPlayback
具有自己的队列。
目标队列可以持有 10 个已排队消息以及在主动播放的消息。如果在目标队列已满时添加消息,Vivox SDK 将放弃该消息并引发 InvalidOperationException (VxErrorTTSDestinationQueueIsFull
)。在此情况下,不引发任何文本转语音相关事件。