开始视频流审核
描述
视频流审核是 ZEGO 实时音视频产品的互动扩展服务。开发者通过视频流审核接口,可以调用实时视频审核对视频中的音频和画面进行审核,包括音频的语义和特征(音调、音色、声纹、旋律等)识别,视频画面中的文字语义和内容的识别。ZEGO 会通过 视频流审核回调 或配置的自定义回调地址,把识别结果发送给开发者,开始视频流审核功能与 结束视频流审核 请结合使用。
注意
使用该接口前,请参考 控制台 - 云市场 - 数美内容审核,按照页面指引,自助开通 数美内容审核
相关权限。
接口原型
- 请求方法:POST
说明
使用 POST 请求方法传递参数时:
- Body 中的参数直接传 JsonObject 格式即可,无需序列化为 String 格式。
- Headers 中,设置 “Content-type” 为 “application/json”。
- 请求地址:
https://rtc-api.zego.im/?Action=StartCensorVideoV2
- 传输协议:HTTPS
- 调用频率限制(同一个 AppID 下所有房间):100 次/秒
请求参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表请参考 完整公共参数列表请参考 调用方式 中的 “公共请求参数”。
参数 | 类型 | 是否必选 | 描述 |
---|---|---|---|
RoomId | String | 是 | 需要进行音频审核的房间 ID。 默认会将该房间内的所有流送审,如果房间内有流不需要送审(比如受信任的用户所推的流),请在调用客户端 SDK startPublishingStream 推流时,将 ZegoPulisherConfig.streamCensorshipFlag 设置为不允许送审。 |
EventId | String | 是 | 场景标识。 通过该参数标识音频流对应的场景。审核策略可以根据场景进行调整,从而实现不同的场景审核尺度的控制。
|
Language | String | 否 | 语言类型,对音频和截帧识别的语种类型。
|
AudioParam | Object | 否 | 音频的参数,不传则不审核音频流。 |
└ RiskTypeList | Array of String | 否 | 风险审核类别。 RiskTypeList 与 BusinessTypeList 至少一个不为空,如果二者同时为空,则不审核音频,仅审核视频。数组中可添加的值如下: 音频语义:
音频特征:
|
└ BusinessTypeList | Array of String | 否 | 业务识别类别。 RiskTypeList 与 BusinessTypeList 至少一个不为空,如果二者同时为空,则不审核音频,仅审核视频。数组中可添加的值如下: 音频语义:
音频特征:
如果以上可选值无法满足您的业务诉求,请联系 ZEGO 技术支持。 |
└ AudioLanguage | Array of String | 否 | 视频流中的音频语种。 在需要识别音频的语义时,请准确传入该值。可选值:
|
└ ReturnAllText | Int32 | 否 | 是否返回当前 10s 片段的所有文本。
审核结果的风险等级将分为以下三类: PASS:正常内容,建议直接放行。 REVIEW:可疑内容,建议人工审核。 REJECT:违规内容,建议直接拦截。 |
└ ReturnPreText | Int32 | 否 | 是否返回违规片段的前一个片段文本。
|
└ ReturnPreAudio | Int32 | 否 | 是否返回违规片段的前一个音频片段链接。
|
└ ResultCallbackUrl | String | 否 | 自定义审核结果的回调地址。 如果您需要将此次审核任务的审核结果,通过其他的回调地址抛出,可以通过本参数实现。如果不需要,可以在 ZEGO 控制台配置统一的回调地址,详情请参考 控制台 - 云市场 - 数美内容审核。 |
└ StatusCallbackUrl | String | 否 | 自定义审核状态回调地址。 如果您需要将此次审核任务的审核状态,通过其他的回调地址抛出,可以通过本参数实现。如果不需要,可以在 ZEGO 后台配置统一的回调地址,详情请参考 控制台 - 云市场 - 数美内容审核。 |
VideoParam | Object | 是 | 视频审核相关参数。 |
└ RiskTypeList | Array of String | 否 | 风险审核类别。 RiskTypeList 与 BusinessTypeList 至少一个不为空。数组中可添加的值如下: 画面文字语义:
|
└ BusinessTypeList | Array of String | 否 | 业务识别类别。 RiskTypeList 与 BusinessTypeList 至少一个不为空。数组中可添加的值: 画面内容:
|
└ ReturnAllImg | Int32 | 否 | 视频流截帧的风险等级,建议传入 1。
|
└ DetectFrequency | Int32 | 否 | 截帧频率。 单位:秒。默认为 3s 截帧一次进行审核。 |
└ ResultCallbackUrl | String | 否 | 自定义审核结果的回调地址。 如果您需要将此次审核任务的审核结果,通过其他的回调地址抛出,可以通过本参数实现。如果不需要,可以在 ZEGO 控制台配置统一的回调地址,详情请参考 控制台 - 云市场 - 数美内容审核。 |
└ StatusCallbackUrl | String | 否 | 自定义审核状态回调地址。 如果您需要将此次审核任务的审核状态,通过其他的回调地址抛出,可以通过本参数实现。如果不需要,可以在 ZEGO 后台配置统一的回调地址,详情请参考 控制台 - 云市场 - 数美内容审核。 |
ReturnFinishInfo | Int32 | 否 | 审核任务结束时,是否进行“审核任务状态”回调。
|
请求示例
- 请求 URL
https://rtc-api.zego.im/?Action=StartCensorVideoV2 &<公共请求参数>
- 请求消息体
{ "RoomId": "room_1", "EventId": "live_streaming", "Language": "zh", "AudioParam": { "RiskTypeList": [ "ADLAW", "ADVERT", "AUDIOPOLITICAL", "DIRTY", "EROTIC", "MOAN", "POLITY" ], "ReturnAllText": 1, "ReturnPreAudio": 1, "ReturnPreText": 1, "ResultCallbackUrl": "", "StatusCallbackUrl": "" }, "VideoParam": { "RiskTypeList": [ "ADVERT", "EROTIC", "IMGTEXTRISK", "POLITY", "QRCODE", "VIOLENT" ], "ReturnAllImg": 1, "DetectFrequency": 5, "ResultCallbackUrl": "", "StatusCallbackUrl": "" }, "ReturnFinishInfo": 1 }
响应参数
参数 | 类型 | 描述 |
---|---|---|
Code | Int32 | 返回码。
|
Message | String | 操作结果描述。 |
RequestId | String | 请求 ID。 |
Data | Object | 响应数据。 |
└ TaskId | String | 审核任务 ID,用于结束审核任务。 |
响应示例
{
"Code": 0,
"Data": {
"TaskId": "05e7a786a5191e8f5eb8e5851b01afcd"
},
"Message": "success",
"RequestId": "TestRequestId1722597387688544000"
}
返回码
以下仅列出了接口业务逻辑相关的部分返回码,完整返回码请参考 全局返回码。
返回码 | 说明 | 处理建议 |
---|---|---|
50006、50007 | HTTP 请求失败。 | 请稍后重试(建议 300s),或联系 ZEGO 技术支持。 |
50009 | 审核失败。 | 请稍后重试(建议 300s),或联系 ZEGO 技术支持。 |
50117 | 配置错误,未开通数美权限。 | 请参考 控制台 - 云市场 - 数美内容审核,按照页面指引,自助开通 数美内容审核 相关权限。 |