异步检测
直播音视频异步检测接口帮助您检测直播音视频中的违规内容和多维度的辅助信息,提供包括智能鉴黄、暴恐、涉政、违禁、广告、谩骂、恶心、涉价值观等违规内容识别能力,以及音频维度如语音识别、语种检测、ASMR检测、娇喘检测、领导人声纹检测、涉政歌曲检测,视频维度如logo识别、OCR识别、人脸识别、直播视频质量等多维度辅助信息能力,用于异步获取直播音视频中的违规内容和多维度的辅助信息。
接口说明
该接口用于异步提交直播音视频检测任务,并返回直播音视频标识,支持通过http协议调用。
鉴权说明
易盾内容安全服务使用签名方法对接口进行鉴权,所有接口每一次请求都需要包含签名信息(signature 参数),以验证用户身份,防止信息被恶意篡改。目前支持MD5,SHA1,SHA256,SM3几种加密算法,详细信息,请参见接口鉴权。
重试机制
普通拉流直播:
- 每次重试拉流间隔3秒,直至到达最大无连接时长。最大无连接时长默认为150秒,该参数业务侧可配置。
RTC直播:
- 每次重试间隔3秒,直至到达最大无连接时长。最大无连接时长默认为150秒,该参数业务侧可配置。
- 另外有最大无数据时长限制(即统计从上一次监听到流数据到现在时长),默认值为云信30分钟、其他RTC供应商为12小时,该参数业务侧可配置。
直播音视频要求
- 直播音视频支持类型:URL
- 直播音视频支持流媒体协议:rtp、srtp、rtmp、rtmps、mmsh、mmst、hls、http、tcp、https等
- 直播音视频下载:下载时间限制为5秒内,如果下载时间超过5秒,接口检测失败
检测耗时
直播音视频异步检测只是提交直播检测任务,拉流及检测这些逻辑异步完成,建议您将超时时间设置为2秒
历史版本
请求
名称 | 值 |
---|---|
HTTP URL | http://as.dun.163.com/v3/livewallsolution/check |
HTTP Method | POST |
请求头
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Content-Type | String | 是 | 固定值:"application/x-www-form-urlencoded" |
请求参数
请求参数由公共参数和业务参数两部分组成。
公共参数
公共参数包含密钥信息和参数签名信息,具体的公共参数请参考请求公共参数。
业务参数
名称 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
version | String | 是 | 4 | 接口版本号,值为v3.1 |
url | String | 是 | 2048 | 直播流地址 |
dataId | String | 是 | 128 | 上传数据唯一标识,能够根据该值定位到该条数据,如对数据结果有异议,可以发送该值给客户经理查询 |
title | String | 否 | 512 | 直播语音标题 |
ip | String | 否 | 128 | 用户IP地址 |
account | String | 否 | 128 | 账号ID/主播ID |
roomId | String | 否 | 128 | 主播房间号 |
age | String | 否 | 64 | 主播年龄 |
accountLevel | String | 否 | 10 | 账号级别/主播级别(大写A-Z) |
accountName | String | 否 | 30 | 账号名称/主播名称 |
accountInfo | String | 否 | 1024 | 主播信息 |
deviceId | String | 否 | 128 | 用户设备 id,与易盾设备画像库匹配,明文请转大写传入;MD5加密请明文转大写后MD5计算,再转大写传入,建议抄送 |
deviceType | Number | 否 | 4 | 用户设备id的类型,0:其他,10:IMEI,11:AndroidID,12:IDFA,13:IDFV,14:MAC ,20:IMEI_MD5,21:AndroidID_MD5,22:IDFA_MD5,23:IDFV_MD5,24:MAC_MD5 |
livelink | String | 否 | 128 | 传入该路直播的前台直播路径(必须使用https协议),主要用于SaaS审核系统-直播音视频查询页面和审核页面增加前台跳转链接功能 |
screenMode | Number | 否 | 1 | 0-竖屏,1-横屏,默认竖屏 |
detectType | Number | 否 | 1 | 机器过检类型,0:直播视频与直播音频同时过检,1:仅过检直播视频,2:仅过检音频,不填写默认执行易盾后台策略配置 |
labourUnion | String | 否 | 256 | 主播所属工会 |
operationManager | String | 否 | 128 | 运营管理者 |
scFrequency | Number | 否 | 4 | 截图检测频率,默认5秒截图检测一次,可设置范围为0.5~600秒 |
advancedFrequency | String | 否 | 128 | 高级截帧设置,此项填写,默认截帧策略失效,如{"durationPoints":[300,600],"frequencies":[3,5,10]} |
∟durationPoints | Object[] | 是 | 5 | 直播视频时长区间分割,单位为秒,数组最多5个 |
∟frequencies | Object[] | 是 | 6 | 直播视频时长区间对应的截帧频率,可设置范围为2~600秒,数组最多6个 |
callback | String | 否 | 2048 | 数据回调参数,调用方根据业务情况自行设计,当调用callback接口获取直播音视频结果时,该接口会原样返回该字段,详细见直播音视频离线检测结果获取。作为数据处理标识,因此该字段应该设计为能唯一定位到该次请求的数据结构,如对用户的昵称进行检测,dataId可设为用户标识(用户ID),用户修改多次,每次请求数据的dataId可能一致,但是callback参数可以设计成定位该次请求的数据结构,比如callback字段设计成json,包含dataId和请求的时间戳等信息,当然如果不想做区分,也可以直接把callback设置成dataId的值。 |
callbackUrl | String | 否 | 512 | 离线结果回调通知到客户的URL。主动回调数据接口超时时间设置为2s,为了保证顺利接收数据,需保证接收接口性能稳定并且保证幂等性。 |
uniqueKey | String | 否 | 256 | 客户个性化直播流唯一性标识,传入后,将以此值作为重复检测依据,若不传,默认以URL作为查重依据 |
wallHidden | Number | 否 | 1 | 是否从审核墙上隐藏,0-否, 1-是 |
checkLanguageCode | String | 否 | 2 | 指定语言检测音频内容,需以易盾标准填入,可选范围:zh:中文,en:英语,it:意大利语,id:印尼语,es:西班牙语,fr:法语,ms:马来语,tl:菲利宾语,th:泰语,de:德语,hi:印地语,ru:俄语,ar:阿拉伯语,vi:越南语,ja:日语,ko:韩语;不填以后台配置为准 |
gender | Number | 否 | 1 | 用户性别,0未知,1男,2女,在社交、直播场景建议抄送,辅助策略精准调优 |
backgroundImage | String | 否 | 1024 | 背景图 |
cover | String | 否 | 1024 | 封面 |
photo | String | 否 | 1024 | 头像 |
censorStreamUrl | String | 否 | 2048 | 审核流地址, 用于传输需要在 RTC 审核墙下播放的直播流地址信息(目前仅支持 hls、http-flv 两种流协议) |
checkSpeakerIds | String | 否 | 200 | 指定监听必审列表范围内的数据,英文逗号分隔字符串,字符串长度不能超过200,分隔的数量不能超过20个,每个必须为数字且不能包含空格,有效参数如1000,2000,3000,无效参数如:1a,2b,仅云信rtc监听模式下生效, |
noCheckSpeakerIds | String | 否 | 200 | 指定不监听信任用户列表范围内的数据,英文逗号分隔字符串,字符串长度不能超过200,分隔的数量不能超过20个,每个必须为数字且不能包含空格,有效参数如1000,2000,3000,无效参数如:1a,2b,仅云信rtc监听模式下生效, |
subProduct | String | 否 | 32 | 业务结算id(自定义),业务方传入参数,用于资源账单统计,如需开启请联系易盾客户经理。开启之后资源账单按套餐结算sheet增加subProduct维度的数据请求量、检测量、消耗金额的统计 |
extension | String | 否 | 30000 | 自定义扩展参数,JSON字符串格式。如:"{"keyName1":"value1","keyName2":"value2"}" |
请求体示例
url=testurl&version=v3.1&signature=xxx&secretId=xxx&
响应
响应结果
响应字段如下,响应公共字段已省略,详细见响应公共字段:
名称 | 类型 | 必须返回 | 描述 |
---|---|---|---|
result | Object[] | 是 | 直播音视频异步提交检测结果 |
∟ taskId | String | 是 | 本次请求数据标识,可以根据该标识查询数据最新结果 |
∟ status | Boolen | 是 | true表示提交成功,false表示提交失败 |
响应体示例
{
"code": 200,
"msg": "ok",
"result": {
"taskId": "*****",
"status": true
}
}
重复检测返回结构
{
"code":417,
"msg":"返回原提交taskID值"
}
响应返回码
响应返回码由公共错误码和业务错误码两部分组成,详情请参考响应返回码
示例代码
服务端 SDK 接入
推荐使用我们提供的服务端 SDK 进行接入(目前支持 Java 和 Go 两种语言),不但可以节省接入成本,实现更快速的集成,并享有灵活的请求配置选项,同时 SDK 内置了错误重试、熔断降级等功能,提升服务可用性。点击 服务端 SDK 接入指引 了解更多。