跳到主要内容

声网语音流异步接口

1. 接口介绍

声网客户使用 云端录制 服务时,可选择图普的语音流识别作为扩展服务,对录制中的语音进行实时审核。通过云端录制进行审核时,声网会将录制的数据源整合为 RTMP 流,图普根据声网提供的流地址进行拉流切片审核,并将审核结果回调给客户。 目前图普语音流识别已支持声网单流录制 & 合流录制。业务流程如下:

参考文档

下面列出声网关于 云端录制 相关的文档:

2. 请求

客户通过调用声网 开始云端录制接口 ,开始进行云端录制。调用时,在 clientRequest.extensionServiceConfig 中指定图普语音流识别相关参数。该参数说明摘录如下(请以声网文档页面说明为准):


extensionServiceConfig 是一个 JSON Object,用于设置扩展服务。扩展服务是基于声网 RTC SDK 的一系列应用服务,能够对声网 RTC SDK 中产生的音视频流进行进一步处理,如页面录制、视频点播服务、智能语音审核服务。

extensionServiceConfig 包含以下字段:

  • errorHandlePolicy:(选填)String 类型。错误处理策略。目前仅可设置为默认值 error_abort,表示当某一扩展服务发生错误后,订阅及其他非扩展服务均停止。
  • apiVersion:(选填)String 类型,云端录制 RESTful API 的版本号,默认为 v1
  • extensionServices:JSONArray 类型,由每个扩展服务的设置组成的数组。

2.1 扩展参数说明

参数名称类型是否必填说明
serviceNameString扩展服务的名称,需填入 tupu_voice_scan
errorHandlePolicyString声网定义的错误处理策略,可选值:error_abort
streamTypesString声网定义的订阅媒体流类型,当前可选值:0
serviceParamObject扩展服务的具体参数设置,详见 ServiceParam 数据结构

ServiceParam 数据结构

参数名称类型是否必填说明
secretIdString图普应用 SID
callbackString识别结果回调接口地址,用于接收 POST 回调
callbackAddrString声网新增的必填参数,实际传 - 即可,避免参数校验不通过
timestampNumber当前服务器的 Unix 时间戳
nonceNumber随机数
signatureString

RSA-SHA256 算法签名。签名步骤:

  1. 将参与签名的参数(secretIdtimestampnonce)用英文半角逗号 , 拼接,得到 SignString
  2. 使用您的私钥以 RSA-SHA256 算法对 SignString 签名,然后进行 Base64 编码,得到 signature 字符串。
  • 点击 数字证书 下载私钥。私钥有 rsapkcs8 两种格式,通常 Golang,Python 使用 rsa 格式私钥,Java 使用 pkcs8 格式私钥
  • 点击 签名及验证示例 查看签名示例
callbackRuleString回调规则,主要影响审核场景的识别任务,如语音转译审核、低俗语音识别,默认为 violation

violation:仅回调违规片段的识别结果;
all:回调所有片段的识别结果

2.2 请求示例

{
"cname": "<cname>",
"uid": "<uid>",
"clientRequest": {
"recordingConfig": {
"channelType": 0,
"maxIdleTime": 30,
"streamTypes": 0
},
"extensionServiceConfig": {
"errorHandlePolicy": "error_abort",
"extensionServices": [
{
"serviceName": "tupu_voice_scan",
"errorHandlePolicy": "error_abort",
"streamTypes": 0,
"serviceParam": {
"secretId": "<secretId>",
"callback": "<callback>",
"callbackAddr": "-",
"callbackRule": "all",
"timestamp": 1685000000,
"nonce": 1685000000,
"signature": "<signature>"
}
}
]
}
}
}

3. 同步响应

略。参考声网 开始云端录制接口

4. 常见问题

4.1 开启语音流扩展服务后,未接收到识别结果回调

首先将回调规则设置为全部回调,观察是否能够收到识别结果回调。若仍无回调,请记录开始录制时声网返回 的 SessionID(录制 ID),提供给图普客户经理进行排查。