视频点播提供了支持视频、音频、图片、文本等全方位的媒体审核服务,可帮助用户发现媒体资源中的暴恐、涉政、涉黄、广告、辱骂、不良场景等风险内容或元素,降低人工审核成本,提升内容质量,改善平台秩序和用户体验。本文提供了Java SDK媒体审核相关的API调用示例,包含提交智能审核(即机器审核)作业、获取智能审核结果、提交人工审核等。
接口调用说明
本文提供的接口调用示例均通过AccessKey初始化客户端实例。
接口的参数解释和返回字段的详细说明请访问阿里云OpenAPI门户,在各接口右侧的文档页签查看。
本文仅提供部分复杂接口的代码示例,其余接口的SDK代码示例,可以通过阿里云OpenAPI门户获取。访问阿里云OpenAPI门户,在接口的左侧参数配置页签,填写需要的参数信息并发起调用后,在右侧的SDK示例页签,选择SDK版本,选择目标语言,查看并下载示例代码。
本文均以V1.0版本的SDK为例进行接口调用,如需获取V2.0版本的SDK示例,请在通过阿里云OpenAPI门户获取SDK示例时,指定到对应的SDK版本。
初始化客户端
使用前请先初始化客户端,请参见初始化。
提交智能审核作业
调用SubmitAIMediaAuditJob接口,完成提交智能审核作业功能。
阿里云OpenAPI门户地址:SubmitAIMediaAuditJob。
查询智能审核作业
调用GetAIMediaAuditJob接口,完成查询智能审核作业功能。
阿里云OpenAPI门户地址:GetAIMediaAuditJob。
获取智能审核结果摘要
调用GetMediaAuditResult接口,完成获取智能审核结果摘要功能。
阿里云OpenAPI门户地址:GetMediaAuditResult。
获取智能审核结果详情
调用GetMediaAuditResultDetail接口,完成获取智能审核结果详情功能。
阿里云OpenAPI门户地址:GetMediaAuditResultDetail。
获取智能审核结果时间线
调用GetMediaAuditResultTimeline接口,完成获取智能审核结果时间线功能。
阿里云OpenAPI门户地址:GetMediaAuditResultTimeline。
人工审核
调用CreateAuditRequest接口,完成人工审核功能。
阿里云OpenAPI门户地址:CreateAuditRequest。
调用示例如下:
import com.aliyuncs.auth.AlibabaCloudCredentials;
import com.aliyuncs.auth.EnvironmentVariableCredentialsProvider;
import com.aliyuncs.vod.model.v20170321.CreateAuditRequest;
import com.aliyuncs.vod.model.v20170321.CreateAuditResponse;
import com.alibaba.fastjson.JSONObject;
/**
*读取AccessKey信息
*/
public static DefaultAcsClient initVodClient() throws ClientException {
String regionId = "cn-shanghai"; // 点播服务接入地域
// 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
// 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取AccessKey,来实现API访问的身份验证。运行代码示例前,请配置环境变量ALIBABA_CLOUD_ACCESS_KEY_ID和ALIBABA_CLOUD_ACCESS_KEY_SECRET。
DefaultProfile profile = DefaultProfile.getProfile(regionId, System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
DefaultAcsClient client = new DefaultAcsClient(profile);
return client;
}
/**
* 构建审核内容
*/
public static String buildAuditContent() throws Exception {
List<JSONObject> auditContents = new ArrayList<>();
JSONObject auditContent = new JSONObject();
auditContent.put("VideoId", "3ebc10160bda481ca9b6858a0b58****"); // 视频ID
auditContent.put("Status", "Blocked"); // 审核状态
auditContent.put("Reason", "含有淫秽色情内容"); // 若审核状态为屏蔽时,需给出屏蔽的理由,最长支持128字节
auditContents.add(auditContent);
return auditContents.toString();
}
/**
* 人工审核
*/
public static CreateAuditResponse createAudit(DefaultAcsClient client) throws Exception {
CreateAuditRequest request = new CreateAuditRequest();
// 设置审核内容
request.setAuditContent(buildAuditContent());
// 返回结果
return client.getAcsResponse(request);
}
/**
* 以下为调用示例
* @param args
*/
public static void main(String[] args) throws Exception {
DefaultAcsClient client = initVodClient();
try {
// 提交人工审核结果
CreateAuditResponse response = createAudit(client);
// 打印请求ID
System.out.println("ResquestId:" + response.getRequestId());
} catch (Exception e) {
System.out.println("ErrorMessage:" + e.getLocalizedMessage());
}
}
获取人工审核历史
调用GetAuditHistory接口,完成获取人工审核历史功能。
阿里云OpenAPI门户地址:GetAuditHistory。
设置审核安全IP
调用SetAuditSecurityIp接口,完成设置审核安全IP功能。
阿里云OpenAPI门户地址:SetAuditSecurityIp。
获取审核安全IP列表
调用ListAuditSecurityIp接口,完成获取审核安全IP列表功能。
阿里云OpenAPI门户地址:ListAuditSecurityIp。