文档中心
ExpressAudioSDK 实时语音
文档中心
体验 App
SDK 中心
API 中心
常见问题
代码市场
进入控制台
立即注册
登录
中文站 English
  • 文档中心
  • 实时语音
  • 服务端 API
  • 音视频流审核接口
  • 开始视频流审核

服务端 API 版块于4月16日至5月15日升级维护,期间暂停信息更新,如有任何疑问,请联系ZEGO技术支持。

开始视频流审核

更新时间:2025-04-15 17:17

1 描述

视频流审核是 ZEGO 实时音视频产品的互动扩展服务。开发者通过视频流审核接口,可以调用实时视频审核对视频中的音频和画面进行审核,包括音频的语义和特征(音调、音色、声纹、旋律等)识别,视频画面中的文字语义和内容的识别。ZEGO 会通过 视频流审核回调 或配置的自定义回调地址,把识别结果发送给开发者,开始视频流审核功能与 结束视频流审核 请结合使用。

使用该接口前,请参考 控制台 - 云市场 - 数美内容审核,按照页面指引,自助开通 数美内容审核 相关权限。

2 接口原型

  • 请求方法:POST

    使用 POST 请求方法传递参数时:

    • Body 中的参数直接传 JsonObject 格式即可,无需序列化为 String 格式。
    • Headers 中,设置 “Content-type” 为 “application/json”。
  • 请求地址:https://rtc-api.zego.im/?Action=StartCensorVideoV2
  • 传输协议:HTTPS
  • 调用频率限制(同一个 AppID 下所有房间):100 次/秒

3 请求参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表请参考 调用方式 中的 “2.1 公共请求参数”。

参数 类型 是否必选 描述
RoomId
String
是
需要进行音频审核的房间 ID。
默认会将该房间内的所有流送审,如果房间内有流不需要送审(比如受信任的用户所推的流),请在调用客户端 SDK startPublishingStream 推流时,将 ZegoPulisherConfig.streamCensorshipFlag 设置为不允许送审。
EventId
String
是
场景标识。
通过该参数标识音频流对应的场景。审核策略可以根据场景进行调整,从而实现不同的场景审核尺度的控制。

  • 直播:live_streaming。
  • 语聊房:audio_room。
  • 1v1:private_chat。
如果以上可选值不能完全满足您的使用诉求,请联系 ZEGO 技术支持。
Language
String
否
语言类型,对音频和截帧识别的语种类型。

  • zh:中文(默认值)
  • en:英文
  • ar:阿拉伯语
AudioParam
Object
否
音频的参数,不传则不审核音频流。
RiskTypeList
Array of String
否
风险审核类别。
RiskTypeList 与 BusinessTypeList 至少一个不为空,如果二者同时为空,则不审核音频,仅审核视频。数组中可添加的值如下:
音频语义:

  • EROTIC:色情
  • DIRTY:辱骂
  • POLITY:涉政
  • BAN:违禁
  • VIOLENT:暴恐
  • ADVERT:广告

音频特征:

  • MOAN:娇喘
  • ANTHEN:国歌识别
  • BANEDAUDIO:违禁歌曲
  • 如需其他特征,请联系 ZEGO 技术支持。
BusinessTypeList
Array of String
否
业务识别类别。
RiskTypeList 与 BusinessTypeList 至少一个不为空,如果二者同时为空,则不审核音频,仅审核视频。数组中可添加的值如下:
音频语义:

  • MOINIR:未成年人

音频特征:

  • SING:唱歌
  • LANGUAGE:语种识别
  • VOICE:人声属性识别

音频流的识别并不仅限于违规内容,也可以辅助开发者进行业务运营。 如果以上可选值无法满足您的业务诉求,请联系 ZEGO 技术支持。

AudioLanguage
Array of String
否
视频流中的音频语种。
在需要识别音频的语义时,请准确传入该值。可选值:

  • zh:中文、ja:日语、ko:韩语、th:泰语
  • vi:越南语、ms:马来语、tl:菲律宾语、id:印尼语
  • hi:印地语中、ar:阿拉伯语、tr:土耳其语、en:英文
  • es:西班牙语、pt:葡萄牙语、it:意大利语、fr:法语
  • de:德语、ru:俄语
ReturnAllText
Int32
否
是否返回当前 10s 片段的所有文本。

  • 0:(默认值)返回风险等级为非 PASS 的音频片段文本。
  • 1:返回所有风险等级的音频文本片段。
    审核结果的风险等级将分为以下三类:
    PASS:正常内容,建议直接放行。
    REVIEW:可疑内容,建议人工审核。
    REJECT:违规内容,建议直接拦截。
ReturnPreText
Int32
否
是否返回违规片段的前一个片段文本。

  • 0:(默认值)不返回违规片段前一个 10s 片段文字。
  • 1:返回违规片段前一个 10s 片段文字。
ReturnPreAudio
Int32
否
是否返回违规片段的前一个音频片段链接。

  • 0:(默认值)不返回违规片段前一个 10s 片段音频,只返回违规片段音频链接。
  • 1:返回违规片段前一个 10s 片段音频链接。
ResultCallbackUrl
String
否
自定义审核结果的回调地址。
如果您需要将此次审核任务的审核结果,通过其他的回调地址抛出,可以通过本参数实现。如果不需要,可以在 ZEGO 控制台配置统一的回调地址,详情请参考 控制台 - 云市场 - 数美内容审核。
StatusCallbackUrl
String
否
自定义审核状态回调地址。
如果您需要将此次审核任务的审核状态,通过其他的回调地址抛出,可以通过本参数实现。如果不需要,可以在 ZEGO 后台配置统一的回调地址,详情请参考 控制台 - 云市场 - 数美内容审核。
VideoParam
Object
是
视频审核相关参数。
RiskTypeList
Array of String
否
风险审核类别。
RiskTypeList 与 BusinessTypeList 至少一个不为空。数组中可添加的值如下:

画面文字语义:

  • IMGTEXTRISK:基础违规识别,包含多个常见标签(涉政、暴恐、违禁、色情、辱骂、广告、灌水隐私、广告法)

画面内容:

  • POLITY:涉政
  • EROTIC:色情、性感
  • VIOLENT:暴恐、违禁
  • QRCODE:二维码
  • ADVERT:广告 如果以上可选值无法满足您的业务诉求,请联系 ZEGO 技术支持。
BusinessTypeList
Array of String
否
业务识别类别。
RiskTypeList 与 BusinessTypeList 至少一个不为空。数组中可添加的值:

画面内容:

  • AGE:未成年人
  • PHOTOMATERIALLOGO:CFP 等版权 LOGO,还支持其他十余种 LOGO,详情请联系技术支持了解。

画面内容扩展:

  • FACEDETECTION:人脸检测
  • BEAUTY:颜值打分

视频流的识别并不仅限于违规内容,也可以辅助开发者进行业务运营。 如果以上可选值无法满足您的业务诉求,请联系 ZEGO 技术支持。

ReturnAllImg
Int32
否
视频流截帧的风险等级,建议传入 1。

  • 0:(默认值)返回风险等级为非 PASS 的截帧审核信息。
  • 1:返回所有风险等级的截帧审核信息。

审核结果的风险等级将分为以下三类:
PASS:正常内容,建议直接放行。
REVIEW:可疑内容,建议人工审核。
REJECT:违规内容,建议直接拦截。

DetectFrequency
Int32
否
截帧频率。
单位:秒。默认为 3s 截帧一次进行审核。
ResultCallbackUrl
String
否
自定义审核结果的回调地址。
如果您需要将此次审核任务的审核结果,通过其他的回调地址抛出,可以通过本参数实现。如果不需要,可以在 ZEGO 控制台配置统一的回调地址,详情请参考 控制台 - 云市场 - 数美内容审核。
StatusCallbackUrl
String
否
自定义审核状态回调地址。
如果您需要将此次审核任务的审核状态,通过其他的回调地址抛出,可以通过本参数实现。如果不需要,可以在 ZEGO 后台配置统一的回调地址,详情请参考 控制台 - 云市场 - 数美内容审核。
ReturnFinishInfo
Int32
否
审核任务结束时,是否进行“审核任务状态”回调。

  • 0:审核结束时不发送结束通知。
  • 1:审核结束时发起结束通知。

4 请求示例

  • 请求 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
    }

5 响应参数

参数 类型 描述
Code
Int32
返回码。

  • 50006、50007:HTTP 请求失败,请稍后重试(建议 300s)。若仍然失败,可联系 ZEGO 技术支持处理。
  • 50009:审核失败,请稍后重试(建议 300s),或联系 ZEGO 技术支持处理。
  • 50117:配置错误,未开通数美音视频流审核权限。请参考 控制台 - 云市场 - 数美内容审核,按照页面指引,自助开通 数美内容审核 相关权限。
Message
String
操作结果描述。
RequestId
String
请求 ID。
Data
Object
响应数据。
TaskId
String
审核任务 ID,用于结束审核任务。

6 响应示例

{
    "Code": 0,
    "Data": {
        "TaskId": "05e7a786a5191e8f5eb8e5851b01afcd"
    },
    "Message": "success",
    "RequestId": "TestRequestId1722597387688544000"
}

7 返回码

以下仅列出了常见的接口业务逻辑相关的返回码,完整返回码请参考 全局返回码。

返回码 说明 处理建议
50006、50007 HTTP 请求失败。 请稍后重试(建议 300s),或联系 ZEGO 技术支持。
50009 审核失败。 请稍后重试(建议 300s),或联系 ZEGO 技术支持。
50117 配置错误,未开通数美权限。 请参考 控制台 - 云市场 - 数美内容审核,按照页面指引,自助开通 数美内容审核 相关权限。
本篇目录
  • 免费试用
  • 提交工单
    咨询集成、功能及报价等问题
    电话咨询
    400 1006 604
    咨询客服
    微信扫码,24h在线

    联系我们

  • 文档反馈