文档首页/ 数字内容生产线 MetaStudio/ API参考/ 附录/ 直播控制RTSA Command命令说明
更新时间:2024-03-20 GMT+08:00

直播控制RTSA Command命令说明

直播控制RTSA Command命令详细说明,如下所示:

数字人直播状态变化图

数字人直播状态变化流程图,如图1所示。

图1 直播状态变化流程图

流程图说明,如下所示:

  • PREPROCESSING:MetaStudio直播服务启动加载形象模型的状态。
  • PLAY_READY:形象模型加载完成的状态。此时数字人处于静默状态,等待开始播放剧本的指令。
  • PROCESSING:数字人的工作状态。数字人会根据直播任务中预置的文本或音频进行直播。
  • PLAY_PAUSE:数字人直播暂停状态。此时数字人会处于静默状态,等待恢复剧本播放的指令。
  • TAKE_OVER:真人接管状态。MetaStudio直播服务会获取RTC通道中来自主播端的音频,实时驱动数字人进行直播。
  • PLAY_END:退出直播任务状态。

RTSA Command定义

  1. RTC User Render用户通过COMMAND通道发送服务端状态通知。

    代码示例如下所示:

    {
      "message_type" : "state_notify",
      "state" : "PREPROCESSING",
    }

    其中,“state”为直播任务状态,取值如下所示:

    • PREPROCESSING:直播任务准备中。
    • PLAY_READY:直播任务准备完成,数字人保持静默状态,等待剧本播放指令。
    • PROCESSING:直播任务运行中。
    • PLAY_PAUSE:数字人暂停说话,保持静默状态。
    • TAKE_OVER:真人接管中。
    • PLAY_END:直播任务结束。
  1. 主播端可以发送直播控制指令。

    代码示例如下所示:

    {
      "message_type" : "live_control",
      "command" : "play_start",
      "params" : {
        "timing" : "NOW",
      }
    }

    其中,参数含义如下所示:

    • “command”为直播控制指令,取值如下所示:
      • get_current_state:获取当前直播任务状态。
      • play_start:数字人启动剧本播放。
      • play_pause:数字人暂停剧本播放,并保持静默状态。
      • play_resume:数字人恢复剧本播放。
      • voice_start:启动数字人实时语音播放。
      • voice_end:结束数字人实时语音播放。
    • “timing”为直播控制指令执行的时间,取值如下所示:
      • NOW:立即执行指令。
      • SENTENCE_END:等待数字人播放至句末后,再执行当前指令。