控制台指南

最佳实践

开发者指南

API 文档

SDK 文档

填写文档满意度调查问卷,赢取缤纷好礼> HOT

视频审核回调内容

最近更新时间:2022-08-03 14:58:35

功能描述

若您配置了审核回调地址,在视频审核结束后,后台会将审核结果以 json 形式回调至您的回调地址。您可以通过回调内容,进行后续的文件处理操作。

回调内容分为简洁回调(Simple)和详细回调(Detail)。

回调内容说明

简洁回调(Simple)

回调通知为HTTPPOST方法,含有 X-Ci-Content-Version: Simple 的头部。

该响应体返回为 application/json 数据,包含完整节点数据的内容展示如下:

{
   "code": 0,
   "data": {
       "event":"ReviewVideo",
       "forbidden_status": 0,
       "porn_info": {
           "hit_flag": 0,
           "label": "",
           "count": 0
       },
       "result": 0,
       "trace_id": "test_trace_id",
       "url": "test_url",
       "cos_headers": {
           "x-cos-meta-xx": "xx"
       }
   },
   "message": "Test request when setting callback url"
}

具体的数据内容如下:

参数名称 描述 类型 是否必选
code 错误码,值为0时表示审核成功,非0表示审核失败。详情请查看 内容审核错误码 Integer
message 错误描述。 String
data 视频审核结果的详细信息。 Object

data 的具体内容如下:

参数名称 描述 类型 是否必选
trace_id 请求的 ID,如果是接口创建的异步任务,则为接口返回的 JobId。 String
url 被审核视频的完整 URL 链接。 String
event 触发的事件,此处固定为 ReviewVideo。 String
result 该字段表示本次判定的审核结果,您可以根据该结果,进行后续的操作;建议您按照业务所需,对不同的审核结果进行相应处理。有效值:0(审核正常),1 (判定为违规敏感文件),2(疑似敏感,建议人工复核)。 Integer
forbidden_status 若您设置了自动冻结,该字段表示视频的冻结状态。0:未冻结,1:已被冻结,2:已转移文件。 Integer
cos_headers 资源上传时设置的自定义 header 内容,若未设置则不返回。 Object
porn_info 审核场景为涉黄的审核结果信息。 Object
ads_info 审核场景为广告引导的审核结果信息。 Object
data_id 提交任务时设置了 DataId 参数时返回,返回原始内容,长度限制为512字节。 String

xx_info 的具体内容如下:

参数名称 描述 类型 是否必选
hit_flag 用于返回该审核场景的审核结果,返回值:0:正常。1:确认为当前场景的违规内容。2:疑似为当前场景的违规内容。 Integer
label 命中的标签名称,目前为空。 String
count 命中该审核分类的敏感截图张数。 Integer

详细回调(Detail)

回调通知为HTTPPOST方法,含有 X-Ci-Content-Version: Detail 的头部。

该响应体返回为 application/json 数据,包含完整节点数据的内容展示如下:

{
  "EventName": "ReviewVideo",
  "JobsDetail": {
    "JobId": "xxxxxx",
    "State": "Success",
    "CreationTime": "",
    "Object": "",
    "Label": "Normal",
    "Result": 0,
    "SnapshotCount": 1,
    "PornInfo": {
      "HitFlag": 0,
      "Count": 0
    },
    "AdsInfo": {
      "HitFlag": 0,
      "Count": 0
    },
    "Snapshot": [
      {
        "Url": "",
        "Text": "",
        "SnapshotTime": 0,
        "Label": "Normal",
        "Result": 0,
        "PornInfo": {
          "HitFlag": 0,
          "Score": 0,
          "Label": "",
          "SubLabel": ""
        },
        "AdsInfo": {
          "HitFlag": 0,
          "Score": 0,
          "Label": "",
          "SubLabel": ""
        }
      }
    ],
    "AudioSection": [
      {
        "Url": "",
        "Text": "",
        "OffsetTime": 0,
        "Duration": 30000,
        "Label": "Normal",
        "Result": 0,
        "PornInfo": {
          "HitFlag": 0,
          "Score": 0
        },
        "AdsInfo": {
          "HitFlag": 0,
          "Score": 0
        }
      }
    ],
    "BucketId": "examplebucket-1250000000",
    "Region": "ap-chongqing",
    "ForbidState": 0,
    "CosHeaders": {
        "x-cos-meta-id": "xxx"
    }
  }
}

具体的数据内容如下:

节点名称(关键字) 描述 类型
JobsDetail 任务的详细结果信息。 Object
EventName 任务的类型,为ReviewVideo String

JobsDetail 的具体内容如下:

节点名称(关键字) 描述 类型
Code 错误码,只有 State 为 Failed 时返回。详情请查看 错误码列表 String
Message 错误描述,只有 State 为 Failed 时返回。 String
JobId 审核任务的 ID。 String
DataId 提交任务时设置了DataId参数时返回,返回原始内容,长度限制为512字节。 String
State 视频审核任务的状态,值为 Submitted(已提交审核)、Snapshoting(截图中)、Success(审核成功)、Failed(审核失败)、Auditing(审核中)其中一个。 String
CreationTime 视频审核任务的创建时间。 String
Object 被审核的视频文件的名称,创建任务使用 Object 时返回。 String
Url 本次审核的文件链接,创建任务使用 Url 时返回。 String
SnapshotCount 视频截图的总数量。直播流状态为 Auditing 的回调中该字段为本次回调包含的截图数量。 Integer
Label 该字段用于返回检测结果中所对应的优先级最高的恶意标签,表示模型推荐的审核结果,建议您按照业务所需,对不同违规类型与建议值进行处理。返回值:Normal:正常,Porn:色情,Ads:广告。 String
Result 该字段表示本次判定的审核结果,您可以根据该结果,进行后续的操作;建议您按照业务所需,对不同的审核结果进行相应处理。有效值:0(审核正常),1 (判定为违规敏感文件),2(疑似敏感,建议人工复核)。 Integer
PornInfo 审核场景为涉黄的审核结果信息。 Object
AdsInfo 审核场景为广告引导的审核结果信息。 Object
Snapshot 该字段用于返回视频中视频画面截图审核的结果。 Array
AudioSection 该字段用于返回视频中视频声音审核的结果。如果未检测音频,则不返回。 Array
BucketId 创建的审核任务所属的存储桶名称。 String
Region 存储桶所在的地域。 String
ForbidState 若您设置了自动冻结,该字段表示视频的冻结状态。0:未冻结,1:已被冻结,2:已转移文件。 Integer
CosHeaders 资源上传到 COS 时设置的自定义 Header 内容,如果未设置则不返回。map 结构,key 为自定义 Header 的名称,value 为内容。 Object
UserInfo 用户业务字段。创建任务时未设置 UserInfo 则无此字段。 Object
Type 审核类型,直播流审核返回 live_video。 String
ListInfo 账号黑白名单结果。 Container

PornInfo,AdsInfo 的具体内容如下:

节点名称(关键字) 描述 类型
HitFlag 用于返回该审核场景的审核结果,返回值:0:正常。1:确认为当前场景的违规内容。2:疑似为当前场景的违规内容。 Integer
Count 命中该审核分类的截图张数。 Integer

Snapshot 的具体内容如下:

节点名称(关键字) 描述 类型
Url 视频截图的访问地址,您可以通过该地址查看该截图内容,地址格式为标准 URL 格式。
注意:每次查看数据的有效期为2小时,2小时后如还需查看,请发起查询请求。
String
SnapshotTime 该字段用于返回当前截图位于视频中的时间,单位为毫秒。例如5000(视频开始后5000毫秒)。审核直播流时,该字段返回当前截图的时间戳,单位为毫秒。例如1649387157000。 Integer
Text 该字段用于返回当前截图的图片 OCR 文本识别的检测结果,仅在审核策略开启文本内容检测时返回。 String
Label 该字段用于返回检测结果中所对应的优先级最高的恶意标签,表示模型推荐的审核结果,建议您按照业务所需,对不同违规类型与建议值进行处理。返回值:Normal:正常,Porn:色情,Ads:广告。 String
Result 该字段表示本次判定的审核结果,您可以根据该结果,进行后续的操作;建议您按照业务所需,对不同的审核结果进行相应处理。有效值:0(审核正常),1 (判定为违规敏感文件),2(疑似敏感,建议人工复核)。 Integer
PornInfo 审核场景为涉黄的审核结果信息。 Object
AdsInfo 审核场景为广告引导的审核结果信息。 Object

Snapshot 中 PornInfo,AdsInfo 的具体内容如下:

节点名称(关键字) 描述 类型
HitFlag 是否命中该审核分类,0表示未命中,1表示命中,2表示疑似。 Integer
Score 该字段表示审核结果命中审核信息的置信度,取值范围:0(置信度最低)-100(置信度最高 ),越高代表该内容越有可能属于当前返回审核信息。例如:色情 99,则表明该内容非常有可能属于色情内容。 Integer
Label 该字段表示该截图的综合结果标签(可能为 SubLabel,可能为人物名字等)。 String
Category 该字段为Label的子集,表示审核命中的具体审核类别。例如 Sexy,表示色情标签中的性感类别。 String
SubLabel 该字段表示审核命中的具体子标签,例如:Porn 下的 SexBehavior 子标签。
注意:该字段可能返回空,表示未命中具体的子标签。
String
OcrResults 该字段表示 OCR 文本识别的详细检测结果,包括文本坐标信息、文本识别结果等信息,有相关违规内容时返回。 Array
LibResults 该字段用于返回基于风险库识别的结果。
注意:未命中风险库中样本时,此字段不返回。
Container Array

Container 节点 LibResults 的内容:

节点名称(关键字) 描述 类型
ImageId 该字段表示命中的风险库中的图片样本 ID。 String
Score 该字段用于返回当前标签下的置信度,取值范围:0(置信度最低)-100(置信度最高 ),越高代表当前的图片越有可能命中库中的样本。例如:色情 99,表明该数据非常有可能命中库中的色情样本。 Integer

OcrResults 的具体内容如下:

节点名称(关键字) 描述 类型
Text 图片 OCR 文本识别出的具体文本内容。 String
Keywords 在当前审核场景下命中的关键词。 Array
Location 该参数用于返回 OCR 检测框在图片中的位置(左上角 xy 坐标、长宽、旋转角度),以方便快速定位识别文字的相关信息。 Object

ObjectResults 的具体内容如下:

节点名称(关键字) 描述 类型
Name 该标签用于返回所识别出的实体名称,如人名。 String
Location 该参数用于返回检测结果在图片中的位置(左上角 xy 坐标、长宽、旋转角度),以方便快速定位相关信息。 Object

Location 的具体内容如下:

节点名称(关键字) 描述 类型
X 该参数用于返回检测框左上角位置的横坐标(x)所在的像素位置,结合剩余参数可唯一确定检测框的大小和位置。 Float
Y 该参数用于返回检测框左上角位置的纵坐标(y)所在的像素位置,结合剩余参数可唯一确定检测框的大小和位置。 Float
Height 该参数用于返回检测框的高度(由左上角出发在 y 轴向下延伸的长度),结合剩余参数可唯一确定检测框的大小和位置。 Float
Width 该参数用于返回检测框的宽度(由左上角出发在 x 轴向右延伸的长度),结合剩余参数可唯一确定检测框的大小和位置。 Float
Rotate 该参数用于返回检测框的旋转角度,该参数结合 X 和 Y 两个坐标参数可唯一确定检测框的具体位置;取值:0-360角度制),方向为逆时针旋转 Float

AudioSection 的具体内容如下:

节点名称(关键字) 描述 类型
Url 视频声音片段的访问地址,您可以通过该地址获取该声音片段的内容,地址格式为标准 URL 格式。
注意:每次查看数据的有效期为2小时,2小时后如还需查看,请发起查询请求。
String
Text 该字段用于返回当前视频声音的 ASR 文本识别的检测结果。 String
OffsetTime 该字段用于返回当前声音片段位于视频中的时间,单位为毫秒,例如5000(视频开始后5000毫秒)。审核直播流时,该字段返回当前声音片段的时间戳,单位为毫秒,例如1649387157000。 Integer
Duration 当前视频声音片段的时长,单位毫秒。 Integer
Label 该字段用于返回检测结果中所对应的优先级最高的恶意标签,表示模型推荐的审核结果,建议您按照业务所需,对不同违规类型与建议值进行处理。返回值:Normal:正常,Porn:色情,Ads:广告。 String
Result 供参考的识别结果,0(正常),1(敏感),2(疑似敏感)。 Integer
PornInfo 审核场景为涉黄的审核结果信息。 Object
AdsInfo 审核场景为广告引导的审核结果信息。 Object

AudioSection 中 PornInfo,AdsInfo 的具体内容如下:

节点名称(关键字) 描述 类型
HitFlag 是否命中该审核分类,0表示未命中,1表示命中,2表示疑似。 Integer
Score 该字段表示审核结果命中审核信息的置信度,取值范围:0(置信度最低)-100(置信度最高 ),越高代表该内容越有可能属于当前返回审核信息。例如:色情99,表明该内容非常有可能属于色情内容。 Integer
Category 该字段表示命中的审核类别。
注意:该字段可能返回空。
String
Keywords 在当前审核场景下命中的关键词,没有时不返回。 Array
LibResults 该字段用于返回基于风险库识别的结果。
注意:未命中风险库中样本时,此字段不返回。
Container Array

Container 节点 LibResults 的内容:

节点名称(关键字) 描述 类型
LibType 命中的风险库类型,取值为1(预设黑白库)和2(自定义风险库)。 Integer
LibName 命中的风险库名称。 String
Keywords 命中的库中关键词。该参数可能会有多个返回值,代表命中的多个关键词。 String Array

UserInfo 的内容:

节点名称(关键字) 描述 类型 是否必选
TokenId 一般用于表示账号信息,长度不超过128字节。 String
Nickname 一般用于表示昵称信息,长度不超过128字节。 String
DeviceId 一般用于表示设备信息,长度不超过128字节。 String
AppId 一般用于表示 App 的唯一标识,长度不超过128字节。 String
Room 一般用于表示房间号信息,长度不超过128字节。 String
IP 一般用于表示 IP 地址信息,长度不超过128字节。 String
Type 一般用于表示业务类型,长度不超过128字节。 String
ReceiveTokenId 一般用于表示接收消息的用户账号,长度不超过128字节。 String
Gender 一般用于表示性别信息,长度不超过128字节。 String
Level 一般用于表示等级信息,长度不超过128字节。 String
Role 一般用于表示角色信息,长度不超过128字节。 String

Container 节点 ListInfo 的内容:

节点名称(关键字) 描述 类型
ListResults 命中的所有名单结果。 Container Array

Container 节点 ListResults 的内容:

节点名称(关键字) 描述 类型
ListType 命中的名单类型,取值为0(白名单)和1(黑名单)。 Integer
ListName 命中的名单名称。 String
Entity 命中了名单中的哪条内容。 String

实际案例

案例一:简洁回调(Simple)

{
   "code": 0,
   "data": {
       "event":"ReviewVideo",
       "forbidden_status": 0,
       "porn_info": {
           "hit_flag": 0,
           "label": "",
           "count": 0
       },
       "result": 0,
       "trace_id": "vxzt90jl2dfscxxxxxxxxxxxxxxxxx",
       "url": "https://examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/video.mp4",
       "cos_headers": {
           "x-cos-meta-id": "666666"
       }
   },
   "message": "success"
}

案例二:详细回调(Detail)

{
  "EventName": "ReviewVideo",
  "JobsDetail": {
    "JobId": "xxxxxx",
    "State": "Success",
    "CreationTime": "2021-08-10T21:01:10+08:00",
    "Object": "1.mp4",
    "Label": "Normal",
    "Result": 0,
    "SnapshotCount": 1,
    "PornInfo": {
      "HitFlag": 0,
      "Count": 0
    },
    "AdsInfo": {
      "HitFlag": 0,
      "Count": 0
    },
    "Snapshot": [
      {
        "Url": "https://video-1250000000.cos.ap-chongqing.myqcloud.com/test/0.jpg",
        "Text": "",
        "SnapshotTime": 41,
        "Label": "Normal",
        "Result": 0,
        "PornInfo": {
          "HitFlag": 0,
          "Score": 0,
          "Label": "",
          "SubLabel": ""
        },
        "AdsInfo": {
          "HitFlag": 0,
          "Score": 0,
          "Label": "",
          "SubLabel": ""
        }
      }
    ],
    "AudioSection": [
      {
        "Url": "https://audio-1250000000.cos.ap-guangzhou.myqcloud.com/0.mp3",
        "Text": "",
        "OffsetTime": 0,
        "Duration": 30000,
        "Label": "Normal",
        "Result": 0,
        "PornInfo": {
          "HitFlag": 0,
          "Score": 0
        },
        "AdsInfo": {
          "HitFlag": 0,
          "Score": 0
        }
      }
    ],
    "BucketId": "examplebucket-1250000000",
    "Region": "ap-chongqing",
    "ForbidState": 0,
    "CosHeaders": {
        "x-cos-meta-id": "xxxx"
    }
  }
}

目录