音视频解决方案结果获取
音视频解决方案离线接口方式获取
接口地址
http://as.dun.163.com/v1/videosolution/callback/results
接口描述
音视频解决方案检测结果获取接口,获取离线处理的数据后,下次调用,不会再次返回之前获取过的离线数据。建议您使用POST请求, 且仅接受 application/x-www-form-urlencoded 编码格式。
接口请求频率
小于10s/20次,请求频率过快服务器会拒绝处理。
请求参数
该接口参数与请求公共参数一致,businessId可不传,详细见 请求公共参数
参数名称 | 类型 | 是否必选 | 最大长度 | 描述 |
---|---|---|---|---|
version | String | Y | 4 | 接口版本v1.1 |
响应结果
响应字段如下,响应通用字段已省略,详细见 响应通用字段:
result 数组数据结构
参数名称 | 类型 | 描述 |
---|---|---|
dataId | String | 调用音视频检测时传递的dataId字段 |
taskId | String | 音视频数据请求标识,可以根据该标识查询音视频数据最新结果 |
callback | String | 调用音视频检测时传递的callback字段 |
checkStatus | Number | 检测状态 1-检测成功 2-检测失败 |
result | Number | 检测结果, 1:正常(建议通过) 2:异常(建议拦截) 3:疑似(建议人工确认) |
censorSource | Number | 审核来源,0:易盾人审,1:客户人审,2:易盾机审 |
censorTime | Number | 人工审核完成时间,毫秒单位时间戳(13位) |
checkTime | Number | 机器检测结束时间,毫秒单位的时间戳形式(2021.1.1 01:00转换时间戳1609434000000) |
evidences | json对象 | 机器检测证据信息,接入机器检测时参考证据信息 |
reviewEvidences | json对象 | 人审证据信息,接入人工审核后,参考人审证据信息,人审证据信息与机器检测证据信息不共存 |
duration | Number | 音视频时长字段,单位ms |
机器检测结果
evidences 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
text | json对象 | 标题证据信息 |
images | json对象数组 | 图片证据信息 |
audio | json对象 | 语音证据信息 |
video | json对象 | 视频证据信息 |
text 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
taskId | String | 唯一标识 |
action | Number | 检测结果,0:通过,1:嫌疑,2:不通过 |
suggestReason | Number | 此分类为易盾根据优先级返回的建议分类,详细请参考labels,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂,700:灌水,900:其他,1100:涉价值观 |
labels | json对象数组 | 分类详情信息 详细数据与文本在线检测labels数据结构一致 |
images 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
taskId | String | 唯一标识 |
name | String | 图片名称(或图片标识) |
suggestReason | Number | 此分类为易盾根据优先级返回的建议分类,详细请参考labels,100:色情,110:性感,200:广告,210:二维码,260:广告法,300:暴恐,400:违禁,500:涉政,800:恶心,900:其他,1100:涉价值观 |
status | Number | 图片检测状态码,定义为:0:检测成功,610:图片下载失败,620:图片格式错误,630:其它 |
labels | json对象数组 | 分类信息详细数据图片在线检测labels数据结构一致 |
audio 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
asrStatus | Number | 音频翻译结果,2:检测中,3:检测完成,4:检测失败 |
asrResult | Number | 音频翻译检测失败原因,1:文件格式错误,2:文件下载失败,3:解析失败,4:音频流不存在,100:并发超限,101:处理失败 |
action | Number | 检测结果,0:通过,1:嫌疑,2:不通过 |
suggestReason | Number | 此分类为易盾根据优先级返回的建议分类,详细请参考labels,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂,700:灌水,900:其他,1100:涉价值观 |
taskId | String | 唯一标识 |
labels | json数组 | 分类信息详细数据 |
segments | json数组 | 音频数据所在断句详细信息 |
segments 数组数据结构
参数名称 | 类型 | 描述 |
---|---|---|
startTime | Number | 断句开始时间,单位秒 |
endTime | Number | 断句结束时间,单位秒 |
content | String | 音频数据所在断句语音识别原文内容,支持返回异常数据所在断句内容或全部原文内容 |
label | Number | 分类信息,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂,900:其他,1100:涉价值观 |
level | Nubmber | 分类级别,0:通过,1:嫌疑,2:不通过 |
hintList | json数组 | 线索详细信息 |
labels 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
label | Number | 分类信息,100:色情,200:广告,260:广告法,300:暴恐,400:违禁,500:涉政,600:谩骂,1100:涉价值观 |
level | Number | 分类级别,0:通过,1:嫌疑,2:不通过 |
subLabels | json数组 | 细分类信息,v3.5版本及以上均会返回命中细分类信息 |
subLabels 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
details | json对象 | 其他信息 |
subLabel | String | 细分类,详细编码请参考下方对应细分类编码对应表 |
自定义细分类
易盾支持sublabel自定义细分类过检并返回,如有需求,可联系您的专属安全策略经理添加。
details 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
hitType | Number | 命中检测器类型:10:用户名单 11:IP名单 12:设备名单 30:敏感词 110:IP地区限制 130:声纹检测 |
hint | json数组 | 线索信息,用于定位文本中有问题的部分,辅助人工审核 |
hint 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
value | String | 命中的敏感词或者声纹检测的分值 |
segments | json数组 | 命中敏感词或者声纹检测的音频时间点 |
segments 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
startTime | Number | 断句开始时间,单位秒 |
endTime | Number | 断句结束时间,单位秒 |
video 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
status | Number | 视频处理状态码,定义为:0:检测成功,110:请求重复,120:参数错误,130:解析错误,140:数据类型错误,150:并发超限,160:视频大小超限(>5G) |
level | Number | 视频级别信息,分为0:正常,1:不确定,2:确定,其中不确定的建议人工复审 |
suggestReason | Number | 此分类为易盾根据优先级返回的建议分类,详细请参考evidences,100:色情,110:性感,200:广告,210:二维码,260:广告法,300:暴恐,400:违禁,500:涉政,800:恶心,900:其他,1100:涉价值观,1020:黑屏,1030:挂机 |
evidences | json对象数组 | 分类信息详细数据 |
evidences对象数据结构:
证据时间戳说明
◆ 证据信息命中黑屏挂机后,type为视频,开始时间和结束时间为证据采集时对应视频内截取第一帧的相对时间。其他垃圾类别,证据开始时间与结束时间一致
参数名称 | 类型 | 描述 |
---|---|---|
beginTime | Number | 证据开始相对时间,单位为毫秒,调用方获取后可自行格式化为可视化时间,如:149000 转换为"00:02:29" |
endTime | Number | 证据结束相对时间,单位为毫秒,调用方获取后可自行格式化为可视化时间,如:149000 转换为"00:02:29" |
type | Number | 1:图片,2:视频 |
url | String | 证据信息 |
labels | json对象数组 | 证据结果数组 |
frontPics | json对象数组 | 关联信息-命中前截图信息 |
backPics | json对象数组 | 关联信息-命中后截图信息 |
labels对象数据结构
参数名称 | 类型 | 描述 |
---|---|---|
label | Number | 分类信息,100:色情,110:性感;200:广告,210:二维码,260:广告法,300:暴恐,400:违禁,500:涉政,800:恶心类,900:其他,1020:黑屏,1030:挂机,1100:涉价值观 |
subLabels | json数组 | 细分类信息,可能包含多个,可能为空 |
level | Number | 级别信息,分为1:不确定,2:确定 |
rate | Number | 分数 |
subLabels 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
subLabel | Number | 细分类,详细编码请参考下方对应细分类编码对照表 |
rate | Number | 置信度分数,0-1之间取值,1为置信度最高,0为置信度最低 |
details | json数组 | htiInfos:命中详细信息 |
details 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
hitInfos | String | 针对命中sublabel的补充说明 |
imageTagInfo | json数组 | 命中标签详细信息,对于返回的hintInfo的解释说明,可能为空 |
hitLocationInfos | json数组 | 命中详情位置信息,当前人脸、logo、关键词支持位置信息返回 |
imageTagInfo 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
tagName | String | hinInfo中可返回的图片中包含的可识别内容 |
tagGroup | String | tagName对应的分组名称,用于对tageName的解释 |
hitLocationInfos 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
hitInfo | String | 命中详情 |
x1 | Number | 位置信息,对应目标矩形左上角横坐标相对坐标 |
y1 | Number | 位置信息,对应目标矩形左上角纵坐标相对坐标 |
x2 | Number | 位置信息,对应目标矩形右下角横坐标相对坐标 |
y2 | Number | 位置信息,对应目标矩形右下角纵坐标相对坐标 |
frontPics对象数据结构
参数名称 | 类型 | 描述 |
---|---|---|
url | String | 命中截图前3个截图URL信息,不满3个按实际存在截图返回 |
backPics对象数据结构
参数名称 | 类型 | 描述 |
---|---|---|
url | String | 命中截图后3个截图URL信息,不满3个按实际存在截图返回 |
人审证据信息
reviewEvidences 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
reason | String | 人工判定原因 |
detail | json对象 | 详细人审证据信息 |
detail 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
audio | json对象数组 | 人审音频片段证据信息 |
video | json对象数组 | 人审视频截图证据信息 |
text | json对象数组 | 文本(简介中)证据信息 |
image | json对象数组 | 图片(简介中)证据信息 |
audio 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
startTime | Number | 音频断句证据开始时间戳,单位秒 |
endTime | Number | 音频断句证据结束时间戳,单位秒 |
description | String | 加入原因 |
video 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
url | String | 证据截图url |
startTime | Number | 证据开始时间戳,单位毫秒 |
endTime | Number | 证据结束时间戳,单位毫秒 |
description | String | 加入原因 |
text 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
word | String | 证据信息文本 |
description | String | 加入原因 |
image 数据结构
参数名称 | 类型 | 描述 |
---|---|---|
url | String | 证据截图url |
description | String | 加入原因 |
响应示例
机审数据结构如下:
{
"code":200,
"msg":"ok",
"result":[
{
"dataId":"12345",
"taskId":"290ffad091c446c0a6d0b20f4f23",
"callback":"",
"result":2,
"checkStatus":1,
"checkTime":1621413902222,
"duration":10,
"evidences":{
"text":{
"action":1,
"taskId":"290ffad091c446c0a6d0b20f4f23",
"suggestReason":500,
"labels":[
{
"label":500,
"level":1,
"details":{
"hint":[
"命中线索信息"
]
},
"subLabels":[
{
"subLabel":"500013"
}
]
}
]
},
"images":[
{
"name":"图片名称",
"taskId":"290ffad091c446c0a6d0b20f4f23",
"suggestReason":210,
"labels":[
{
"label":210,
"level":2,
"rate":"1.0",
"subLabels":[
{
"subLabel":21000,
"rate":"1.0"
}
]
},
{
"label":500,
"level":0,
"rate":"0.0"
},
{
"label":300,
"level":0,
"rate":"0.0"
},
{
"label":100,
"level":0,
"rate":"0.0"
},
{
"label":400,
"level":0,
"rate":"0.0"
},
{
"label":110,
"level":0,
"rate":"0.0"
},
{
"label":800,
"level":0,
"rate":"0.0"
},
{
"label":200,
"level":0,
"rate":"0.0"
},
{
"label":900,
"level":0,
"rate":"0.0"
}
]
}
],
"audio":{
"action":1,
"asrStatus":3,
"asrResult":0,
"taskId":"290ffad091c446c0a6d0b20f4f23",
"suggestReason":500,
"labels":[
{
"label":500,
"level":1,
"subLabels":[
{
"subLabel":"500013",
"details":{
"hint":[
{
"value":"下台",
"segments":[
{
"startTime":185,
"endTime":248
}
]
}
],
"hitType":30
}
}
]
}
],
"segments":[
{
"startTime":124,
"endTime":152,
"content":"我们家族是世袭子爵的贵族",
"label":500,
"level":1,
"hintList":[
"世袭"
]
}
]
},
"video":{
"taskId":"290ffad091c446c0a6dc8030b20f4f23",
"status":0,
"level":2,
"suggestReason":110,
"evidences":[
{
"type":1,
"url":"https://illegal-video.nosdn.127.net/290ffad091c446c0a68030b20f4f23.jpg",
"beginTime":27000,
"endTime":27000,
"labels":[
{
"label":110,
"level":1,
"rate":0.675974,
"subLabels":[
{
"subLabel":11000,
"rate":0.675974,
"details":{
"hitInfos":[
"命中线索信息"
]
}
}
]
}
],
"frontPics":[{
"url":"https://illegal-video.nosdn.127.net/290ffad091c446c0a6dc80f4f23_7_21000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/290ffad091ca6dc8030b20f4f23_8_24000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/290ffad00a6dc80300f4f23_10_30000.jpg"
}
],
"backPics":[
{
"url":"https://illegal-video.nosdn.127.net/290ffad091020f4f23_11_33000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/290ffad091446cf4f23_12_36000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/29ffad91c0a6dc8030f4f23_13_39000.jpg"
}
]
},
{
"type":1,
"url":"https://illegal-video.nosdn.127.net/290ffad091c6dc8030f4f23_55_165000.jpg",
"beginTime":165000,
"endTime":165000,
"labels":[
{
"label":110,
"level":1,
"rate":0.580949,
"subLabels":[
{
"subLabel":11000,
"rate":0.580949,
"details":{
"hitInfos":[
"命中线索信息"
]
},
"imageTagInfos":[
{
"tagName":"男下体",
"tagGroup":"色情"
}
]
}
]
}
],
"frontPics":[
{
"url":"https://illegal-video.nosdn.127.net/290ffad091c44030b20f4f23_52_156000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/290ffad1c446c0a6dc8030f23_53_159000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/290ffad091c446c0a6dc20f4f23_54_162000.jpg"
}
],
"backPics":[
{
"url":"https://illegal-video.nosdn.127.net/29d091c446c0a6dc30b20f4f23_56_168000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/290ffad091c446c8030b20f4f23_57_171000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/290d091c446c0a030b20f4f23_58_174000.jpg"
}
]
}
]
}
},
"receiveTime":1621413858380,
"censorSource":2,
"censorTime":1621413858394,
"censorLabels":[
]
}
]
}
人审数据结构如下:
{
"code":200,
"msg":"ok",
"result":[
{
"dataId":"12345",
"taskId":"290ffad091c446c0a6dc8030b20f4f23",
"callback":"",
"result":2,
"checkStatus":1,
"checkTime":1621827047606,
"reviewEvidences":{
"reason":"色情-画面异常",
"detail":{
"audio":[
{
"startTime":12,
"endTime":12,
"description":"色情内容"
}
],
"video":[
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef.mp4?offset=4",
"startTime":4000,
"endTime":4000,
"description":"色情"
}
]
}
},
"receiveTime":1621827040300,
"censorSource":0,
"censorTime":1621827400640,
"censorLabels":[
]
}
]
}
当无最新离线结果需要获取时,响应示例如下:
{
"code": 200,
"msg": "ok",
"result":[]
}
音视频解决方案主动回调说明
易盾提供主动回调和被动回调数据两种方式,主动回调以数据为维度设置回调地址;易盾方产品回调数据后,主动调用客户提供的http地址将回调数据推送给客户
主动回调接入
客户接入主动回调的方式很简单,只需要在调用在线检测接口请求参数中指定了回调通知参数callbackUrl(即一个http(s)协议接口的URL),则需要支持POST方法,传输数据编码采用utf-8
业务类型 | 回调参数名称 | 类型 | 最大长度 | 描述 |
---|---|---|---|---|
点播音视频 | callbackUrl | String | 256 | 点播音视频提交参数中添加callbackUrl字段 |
您服务端接收到我们推送的结果后,返回的HTTP状态码为200时,表示推送成功,其他的HTTP状态码均视为您接收失败,我们将每隔10分钟推送一次,如果一直失败,持续一天后不再推送;我们主动回调数据接口超时时间设置为2s,为了保证顺利接收数据,客户需保证接收接口性能稳定并且保证幂等性。
请求方法
客户提供的主动回调数据接收接口,需支持 POST 方法。
字符编码
所有接口的请求数据编码皆为 utf-8。
请求公共参数
参数名称 | 类型 | 是否必传 | 描述 |
---|---|---|---|
secretId | String | Y | 产品秘钥 id ,由易盾反垃圾云服务分配,产品标识 |
signature | String | Y | 请求签名,用来验证此次请求的合法性,具体算法见 接口鉴权 |
callbackData | String | Y | 主动回调推送数据,格式为json字符串 |
secretId,signature参数用来给数据接收接口做签名鉴权用
接口鉴权
客户主动回调接收接口可以通过业务开通时易盾分配的密钥信息字段进行接口鉴权,鉴权粒度是否要精确到业务级别,用户可以根据需要自行决定
/**
* 通过HttpServletRequest做签名验证
*
* @param request
* @return
*/
public static boolean verifySignature(HttpServletRequest request) {
String secretId = request.getParameter("secretId");
String businessId = request.getParameter("businessId");
String signature = request.getParameter("signature");
if (StringUtils.isEmpty(secretId) || StringUtils.isEmpty(signature)) {
// 签名参数为空,直接返回失败
return false;
}
Map<String, String> params = Maps.newHashMap();
for (String paramName : request.getParameterMap().keySet()) {
if (!"signature".equals(paramName)) {
params.put(paramName, request.getParameter(paramName));
}
}
// SECRETKEY:产品私有密钥 SECRETID:产品密钥ID BUSINESSID:业务ID,开通服务时,易盾会提供相关密钥信息
String serverSignature = getSignature(SECRETKEY, params);
return signature.equals(serverSignature) && SECRETID.equals(secretId) && BUSINESSID.equals(businessId);
}
/**
* 生成签名信息
* @param secretKey 产品私钥
* @param params 接口请求参数名和参数值map,不包括signature参数名
* @return
* @throws UnsupportedEncodingException
*/
public static String genSignature(String secretKey, Map<String, String> params) throws UnsupportedEncodingException {
// 1. 参数名按照ASCII码表升序排序
String[] keys = params.keySet().toArray(new String[0]);
Arrays.sort(keys);
// 2. 按照排序拼接参数名与参数值
StringBuffer paramBuffer = new StringBuffer();
for (String key : keys) {
paramBuffer.append(key).append(params.get(key) == null ? "" : params.get(key));
}
// 3. 将secretKey拼接到最后
paramBuffer.append(secretKey);
// 4. MD5是128位长度的摘要算法,用16进制表示,一个十六进制的字符能表示4个位,所以签名后的字符串长度固定为32个十六进制字符。
return DigestUtils.md5Hex(paramBuffer.toString().getBytes("UTF-8"));
}
点播音视频解决方案主动回调数据结构
callbackData为Json字符串,机审数据结构如下:
{
"dataId":"12345",
"taskId":"da24a0f71a774bceb02a6094c3bda6ef",
"callback":"",
"result":2,
"checkStatus":1,
"checkTime":1621827047606,
"duration":10,
"evidences":{
"text":{
"action":1,
"taskId":"da24a0f71a774bceb02a6094c3bda6ef",
"suggestReason":20,
"labels":[
{
"label":200
"level":1,
"details":{
"hint":[
"加微信xxxxx"
]
},
"subLabels":[
{
"subLabel":"200268"
}
]
}
]
},
"images":[
{
"name":"da24a0f71a774bceb02a6094c3bda6ef",
"taskId":"5466f15e261f4a21b2fc6c6ca1f3ed94",
"suggestReason":210,
"labels":[
{
"label":210,
"level":2,
"rate":"1.0",
"subLabels":[
{
"subLabel":21000,
"rate":"1.0"
}
]
},
{
"label":500,
"level":0,
"rate":"0.0"
},
{
"label":300,
"level":0,
"rate":"0.0"
},
{
"label":100,
"level":0,
"rate":"0.0"
},
{
"label":400,
"level":0,
"rate":"0.0"
},
{
"label":110,
"level":0,
"rate":"0.0"
},
{
"label":800,
"level":0,
"rate":"0.0"
},
{
"label":200,
"level":0,
"rate":"0.0"
},
{
"label":900,
"level":0,
"rate":"0.0"
}
]
}
],
"video":{
"taskId":"da24a0f71a774bceb02a6094c3bda6ef",
"status":0,
"level":2,
"suggestReason":110,
"evidences":[
{
"type":1,
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_0_0.jpg",
"beginTime":0,
"endTime":0,
"labels":[
{
"label":110,
"level":1,
"rate":0.55154,
"subLabels":[
{
"subLabel":11000,
"rate":0.55154
}
]
}
],
"frontPics":[
],
"backPics":[
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_1_3000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_2_6000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_3_9000.jpg"
}
]
},
{
"type":1,
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_14_42000.jpg",
"beginTime":42000,
"endTime":42000,
"labels":[
{
"label":110,
"level":2,
"rate":0.900028,
"subLabels":[
{
"subLabel":11000,
"rate":0.900028
}
]
}
],
"frontPics":[
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_12_36000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_11_33000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_13_39000.jpg"
}
],
"backPics":[
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_15_45000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_16_48000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_17_48700.jpg"
}
]
},
{
"type":1,
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_16_48000.jpg",
"beginTime":48000,
"endTime":48000,
"labels":[
{
"label":110,
"level":1,
"rate":0.638715,
"subLabels":[
{
"subLabel":11000,
"rate":0.638715
}
]
}
],
"frontPics":[
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_13_39000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_14_42000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_15_45000.jpg"
}
],
"backPics":[
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_17_48700.jpg"
}
]
},
{
"type":1,
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_17_48700.jpg",
"beginTime":48700,
"endTime":48700,
"labels":[
{
"label":110,
"level":1,
"rate":0.595462,
"subLabels":[
{
"subLabel":11000,
"rate":0.595462
}
]
}
],
"frontPics":[
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_14_42000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_15_45000.jpg"
},
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef_16_48000.jpg"
}
],
"backPics":[
]
}
]
}
},
"receiveTime":1621827040300,
"censorSource":2,
"censorTime":1621827040470,
"censorLabels":[
]
}
人审数据结构如下:
{
"dataId":"12345",
"taskId":"da24a0f71a774bceb02a6094c3bda6ef",
"callback":"",
"result":2,
"checkStatus":1,
"checkTime":1621827047606,
"reviewEvidences":{
"reason":"色情-画面异常",
"detail":{
"audio":[
{
"startTime":12,
"endTime":12,
"description":"色情内容"
}
],
"video":[
{
"url":"https://illegal-video.nosdn.127.net/da24a0f71a774bceb02a6094c3bda6ef.mp4?vframe&offset=4",
"startTime":4000,
"endTime":4000,
"description":"色情"
}
]
}
},
"receiveTime":1621827040300,
"censorSource":0,
"censorTime":1621827400640,
"censorLabels":[
]
}