视频审核帮助您检测视频中的风险或违规内容,具体包括以下场景:视频智能鉴黄、视频暴恐涉政、视频图文违规、视频不良场景、视频logo、视频语音违规。本文介绍了使用API接口异步检测视频的方法。检测视频中的语音内容是否包含违规信息。 正常、含垃圾信息、广告、涉政、暴恐、辱骂、色情、灌水、违禁、自定义(例如命中自定义关键词)QPS限制本接口的单用户QPS限制为50次/秒,并发审核路数限制为20路(即同一时间只能处理20个任务,如需要提升并发路数请咨询您的商务经理)。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。(异步检测)请求参数名称类型是否必选示例值描述bizTypeString否defaultliveBoolean否false是否直播。取值:false(默认):表示点播视频检测。true:表示直播流检测。offlineBoolean否false是否近线检测模式。 false(默认):表示实时检测模式,对于超过了并发路数限制的检测请求会直接拒绝。true:表示近线检测模式,提交的任务不保证实时处理,但是可以排队处理,在24小时内开始检测。scenesStringArray是["porn"]指定视频检测场景。取值:porn:视频智能鉴黄。terrorism:视频暴恐涉政。live:视频不良场景。logo:视频logo。ad:视频图文违规。audioScenesStringArray否["antispam"]指定视频语音检测场景,唯一取值:antispam,表示语音反垃圾。不传入该参数时仅检测视频图像内容;如果传入该参数,则在检测视频中图像的同时,对视频中语音进行检测。callbackString否content:JSON字符串格式,请自行解析反转成JSON对象。关于content结果的示例,请参见查询检测结果的返回示例。seedString否abc****tasksJSONArray是指定检测对象,JSON数组中的每个元素是一个检测任务结构体。最多支持100个元素,即每次提交100条内容进行检测,支持100个元素的前提是需要将并发任务调整到100个以上。关于每个元素的具体结构描述,请参见task。表 1. task名称类型是否必选示例值描述clientInfoJSONObject否{"userId":"12023****","userNick":"Mike","userType":"others"}dataIdString否videoId****liveIdString否liveId****视频直播流的ID。该参数用于视频直播任务去重,防止重复检测,如果传递该参数,会根据uid+bizType+liveId判断是否存在检测中的直播任务。如果存在,就直接返回已存在的直播检测taskId,不发起新的任务。urlString否framesJSONArray否待检测视频的截帧信息。frames中的每个元素是个结构体,关于每个元素的具体结构描述,请参见frame。 framePrefixString否截帧地址的前缀,与frame.url一起组成截帧的完整地址。视频截帧的完整地址格式为framePrefix + frame.url。intervalInteger否1视频截帧间隔,单位为秒,取值范围:1~600。默认值为1秒。maxFramesInteger否200表 2. frame名称类型是否必选示例值描述urlString否视频截帧的URL,与framePrefix一起组成截帧的完整地址。视频截帧的完整地址格式为framePrefix + frame.url。offsetInteger否10截帧距离片头的时间戳,单位为秒。(异步检测)返回数据名称类型示例值描述taskIdStringtaskId****检测任务的ID。dataIdStringvideoId****(异步检测)示例(视频异步检测结果查询)使用说明业务接口:/green/video/results,表示查询视频异步检测结果。您可以调用该接口查询视频异步检测任务的结果。关于如何构造HTTP请求,请参见请求结构;您也可以直接选用已构造好的HTTP请求,更多信息,请参见SDK概览。计费信息:该接口不计费。查询超时:建议您将查询间隔设置为30秒(即在提交异步检测任务30秒后查询结果),最长不能超出4个小时,否则结果将会丢失。QPS限制本接口的单用户QPS限制为50次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。(结果查询)请求参数名称类型是否必选示例值描述bodyJSONArray是["taskId****","taskId****"](结果查询)返回数据名称类型示例值描述codeInteger200msgStringOK请求信息的响应信息。dataIdStringvideoId****taskIdStringtaskId****检测任务的ID。resultsJSONArray返回结果,调用成功时(code=200),返回结果中包含一个或多个元素。每个元素是个结构体,具体结构描述,请参见result。 audioScanResultsJSONArray视频语音检测结果。具体结构描述,请参见audioScanResult。表 3. result名称类型示例值描述sceneStringporn视频检测场景,和调用请求中的场景对应。取值:porn:视频智能鉴黄。terrorism:视频暴恐涉政。live:视频不良场景。logo:视频logo。ad:视频图文违规。labelStringporn视频检测结果的分类。不同检测场景的结果分类不同,具体如下:视频智能鉴黄(porn)结果分类:normal:正常porn:色情视频暴恐涉政(terrorism)结果分类:normal:正常terrorism:暴恐涉政视频不良场景(live)结果分类:normal:正常live:包含不良场景视频logo(logo)结果分类:normal:正常logo:包含logo视频图文违规(ad)结果分类:normal:正常ad:包含广告或文字违规信息sublabelStringpornsuggestionStringblock建议您执行的后续操作。取值: pass:结果正常,无需进行其余操作。review:结果不确定,需要进行人工审核。block:结果违规,建议直接删除或者限制公开。rateFloat99.2framesJSONArray包含违规内容的视频截帧的信息。具体结构描述,请参见frame。hintWordsInfoJSONArray视频中含有广告或文字违规信息时,返回视频中广告文字命中的风险关键词信息。具体结构描述,请参见hintWordsInfo。 logoDataJSONArray视频中含有logo时,返回识别出来的logo信息,具体结构描述,请参见logoData。 sfaceDataJSONArray视频中包含暴恐识涉政内容时,返回识别出来的暴恐涉政信息,具体结构描述,请参见sfaceData。 表 4. frame名称类型示例值描述urlString视频截帧的地址。 offsetInteger50视频截帧距离片头的时间戳,单位:秒。labelStringporn视频截帧的检测结果分类。不同检测场景的结果分类不同,具体如下:视频智能鉴黄(porn)截帧结果分类:normal:正常sexy:性感porn:色情视频暴恐涉政(terrorism)截帧结果分类:normal:正常bloody:血腥explosion:爆炸烟光outfit:特殊装束logo:特殊标识weapon:武器politics:涉政violence:打斗crowd:聚众parade:游行carcrash:车祸现场flag:旗帜location:地标drug:涉毒gamble:赌博others:其他视频图文违规(ad)截帧结果分类:normal:正常politics:文字含涉政内容porn:文字含涉黄内容abuse:文字含辱骂内容terrorism:文字含暴恐内容contraband:文字含违禁内容spam:文字含其他垃圾内容npx:牛皮癣广告qrcode:包含二维码programCode:包含小程序码ad:其他广告视频不良场景(live)截帧结果分类:normal:正常meaningless:无意义(例如黑屏、白屏)PIP:画中画smoking:吸烟drivelive:车内直播drug:涉毒gamble:赌博视频logo(logo)截帧结果分类:normal:正常TV:包含受管控的logotrademark:包含商标rateFloat99.1表 5. audioScanResult名称类型示例值描述sceneStringantispam视频语音检测场景,唯一取值:antispam,表示语音反垃圾。labelStringcustomized视频语音的检测结果分类。不同检测场景的结果分类不同,具体如下:normal:正常spam:包含垃圾信息ad:广告politics:涉政terrorism:暴恐abuse:辱骂porn:色情flood:灌水contraband:违禁customized:自定义(例如命中自定义关键词)suggestionStringblock建议您执行的后续操作。取值: pass:结果正常,无需进行其余操作。review:结果不确定,需要进行人工审核。block:结果违规,建议直接删除或者限制公开。rateFloat99.91detailsJSONArray语音对应的文本详情(每一句文本对应一个元素),包含一个或者多个元素,具体结构描述,请参见detail。表 6. detail名称类型示例值描述startTimeInteger24句子开始的时间,单位为秒。endTimeInteger60句子结束的时间,单位为秒。textString计算机语音转换成文本的结果。labelStringnormal该句语音的检测结果分类。取值:normal:正常spam:包含垃圾信息ad:广告politics:涉政terrorism:暴恐abuse:辱骂porn:色情flood:灌水contraband:违禁customized:自定义(例如命中自定义关键词)keywordString开启如果命中了用户自定义关键词,返回命中的关键词。libNameString人工如果命中了用户自定义关键词,返回关键词所在词库。表 7. logoData名称类型示例值描述typeStringTV识别出的logo类型,取值为TV (台标)。nameString***台识别出的logo名称。xFloat140以图片左上角为坐标原点,logo区域左上角到y轴距离,单位:像素。yFloat68以图片左上角为坐标原点,logo区域左上角到x轴距离,单位:像素。wFloat106logo区域宽度,单位:像素。hFloat106logo区域高度,单位:像素。表 5. sfaceData名称类型示例值描述xFloat444以图片左上角为坐标原点,人脸区域左上角到y轴距离。yFloat174以图片左上角为坐标原点,人脸区域左上角到x轴距离。wFloat467人脸区域宽度。hFloat467人脸区域高度。smileRateFloat0微笑的概率。glassesBooleanfalse是否戴眼镜。facesArray识别出的人脸信息。关于具体结构描述,请参见下表face。表 8. face名称类型示例值描述nameStringxxxx相似人物的名称。rateFloat97.03相似概率。idStringAliFace_001****人脸ID。表 9. hitLibInfo名称类型示例值描述contextStringxxxx文字命中的自定义文本内容。libCodeString69751文字命中的自定义文本内容对应的库code。libNameString人工文字命中的自定义文本内容对应的库名称。表 10. hintWordsInfo名称类型示例值描述contextStringxxxx文字命中的风险关键词内容。(结果查询)示例