LiveTalking API 接口文档

May 23, 2026 · View on GitHub

基础路径:http://<host>:<listenport>

所有接口统一返回格式:

{ "code": 0, "msg": "ok", "data": {} }

code 为 0 表示成功,非 0 表示错误。


1. WebRTC Offer

交换 SDP 以建立 WebRTC 连接。

POST /offer

Content-Type: application/json

参数必填类型默认值说明
sdpstringWebRTC Offer SDP
typestring必须为 offer
avatarstring启动参数值指定数字人 ID
refaudiostring参考音频
reftextstring参考文本
custom_configstring动作编排配置 JSON 字符串

响应:

{
  "sdp": "v=0\r\n...",
  "type": "answer",
  "sessionid": "session-uuid"
}

2. 文本驱动 (Human)

发送文本驱动数字人说话,支持直接复读或 LLM 对话。

POST /human

Content-Type: application/json

参数必填类型默认值说明
sessionidstring会话 ID
textstring输入文本
typestringecho: 直接复读; chat: 触发 LLM 回答
interruptboolfalse是否打断当前播报
ttsobject透传给 TTS 的配置(如 voice, emotion

响应:

{ "code": 0, "msg": "ok" }

3. 音频驱动 (Human Audio)

上传音频文件驱动数字人。

POST /humanaudio

Content-Type: multipart/form-data

参数必填类型说明
sessionidstring会话 ID
filefile音频文件

响应:

{ "code": 0, "msg": "ok" }

4. 打断播报

立即清空当前会话的音频队列。

POST /interrupt_talk
参数必填类型说明
sessionidstring会话 ID

响应:

{ "code": 0, "msg": "ok" }

5. 查询说话状态

POST /is_speaking
参数必填类型说明
sessionidstring会话 ID

响应:

{
  "code": 0,
  "msg": "ok",
  "data": true
}

6. 录制控制

控制服务器端的渲染录制。

POST /record
参数必填类型说明
sessionidstring会话 ID
typestringstart_record: 开始录制; end_record: 停止并合成

响应:

{ "code": 0, "msg": "ok" }

7. 下载录像

下载录制完成的 MP4 文件。

GET /record/{sessionid}

路径参数: sessionid — 会话 ID

响应: MP4 文件流。若文件不存在返回 404。


8. 设置动作编排 (Audiotype)

POST /set_audiotype
参数必填类型说明
sessionidstring会话 ID
audiotypeint预定义的动作/状态索引

响应:

{ "code": 0, "msg": "ok" }