提交任务

最近更新时间:2023-11-06 17:02:13

我的收藏

简介

视频人像分割功能是由 数据万象(Cloud Infinite,CI)提供的,数据万象将处理能力与 COS SDK 完全结合,您可以直接按照本篇文档指引进行使用。 本文档提供关于视频人像分割的相关 API 概览以及 SDK 示例代码。
注意:
COS Node.js SDK 版本需要大于等于 v2.11.2。
API
操作描述
提交一个视频人像抠图任务。

提交任务

功能说明

提交一个视频人像抠图任务。

使用示例

function postSegmentVideoBody() {
// sdk引入以及初始化请参考:https://cloud.tencent.com/document/product/436/8629
const config = {
// 需要替换成您自己的存储桶信息
Bucket: 'examplebucket-1250000000', // 存储桶,必须字段
Region: 'COS_REGION', // 存储桶所在地域,必须字段 如 ap-beijing
};
const key = 'jobs'; // 固定值
const host = `${config.Bucket}.ci.${config.Region}.myqcloud.com`;
const url = `https://${host}/${key}`;
const body = COS.util.json2xml({
Request: {
// 创建任务的 Tag:SegmentVideoBody;是否必传:是
Tag: 'SegmentVideoBody',
// 待操作的对象信息;是否必传:是
Input: {
// 文件路径;是否必传:是
Object: 'ci/test.mp4',
},
// 操作规则;是否必传:是
Operation: {
// 视频人像抠图配置;是否必传:否
SegmentVideoBody: {
// 抠图模式 Mask:输出alpha通道结果Foreground:输出前景视频Combination:输出抠图后的前景与自定义背景合成后的视频默认值:Mask;是否必传:否
Mode: 'Mask',
// 抠图类型HumanSeg:人像抠图GreenScreenSeg:绿幕抠图SolidColorSeg:纯色背景抠图默认值:HumanSeg;是否必传:否
// SegmentType: '',
// mode为 Foreground 时参数生效,背景颜色为红色,取值范围 [0, 255], 默认值为 0;是否必传:否
// BackgroundRed: '',
// mode为 Foreground 时参数生效,背景颜色为绿色,取值范围 [0, 255],默认值为 0;是否必传:否
// BackgroundGreen: '',
// mode为 Foreground 时参数生效,背景颜色为蓝色,取值范围 [0, 255],默认值为 0;是否必传:否
// BackgroundBlue: '',
// 传入背景文件。mode为 Combination 时,此参数必填,背景文件需与源文件在同存储桶下;是否必传:否
// BackgroundLogoUrl: '',
// 调整抠图的边缘位置,取值范围为[0, 255],默认值为 0;是否必传:否
// BinaryThreshold: '',
// 纯色背景抠图的背景色(红), 当 SegmentType 为 SolidColorSeg 生效,取值范围为 [0, 255],默认值为 0;是否必传:否
// RemoveRed: '',
// 纯色背景抠图的背景色(绿), 当 SegmentType 为 SolidColorSeg 生效,取值范围为 [0, 255],默认值为 0;是否必传:否
// RemoveGreen: '',
// 纯色背景抠图的背景色(蓝), 当 SegmentType 为 SolidColorSeg 生效,取���范围为 [0, 255],默认值为 0;是否必传:否
// RemoveBlue: '',
},
// 结果输出配置;是否必传:是
Output: {
// 存储桶的地域;是否必传:是
Region: config.Region,
// 存储结果的存储桶;是否必传:是
Bucket: config.Bucket,
// 输出结果的文件名;是否必传:是
Object: 'ci/out_test.mp4',
},
// 透传用户信息,可打印的 ASCII 码,长度不超过1024;是否必传:否
// UserData: '',
// 任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0;是否必传:否
// JobLevel: '',
},
// 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式;是否必传:否
// CallBackFormat: '',
// 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型;是否必传:否
// CallBackType: '',
// 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调;是否必传:否
// CallBack: '',
// 任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填。详情见 CallBackMqConfig;是否必传:否
// CallBackMqConfig: {
// 消息队列所属园区,目前支持园区 sh(上海)、bj(北京)、gz(广州)、cd(成都)、hk(中国香港);是否必传:是
// MqRegion: '',
// 消息队列使用模式,默认 Queue :主题订阅:Topic队列服务: Queue;是否必传:是
// MqMode: '',
// TDMQ 主题名称;是否必传:是
// MqName: '',
// },
},
});

cos.request(
{
Method: 'POST', // 固定值,必须
Key: key, // 必须
Url: url, // 请求的url,必须
Body: body, // 请求体参数,必须
ContentType: 'application/xml', // 固定值,必须
},
function (err, data) {
if (err) {
// 处理请求失败
console.log(err);
} else {
// 处理请求成功
console.log(data.Response);
}
}
);
}
postSegmentVideoBody();

参数说明

cos.request 方法参数说明:
参数名称
参数描述
类型
是否必填
Method
固定值:POST
String
Url
请求url,固定值
String
Key
固定值:jobs
String
ContentType
固定值
String
Body
请求体,详情请参见 提交任务
Object

回调函数说明

function(err, data) { ... }
参数名称
参数描述
类型
err
请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多详情请参见 错误码
Object
- statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
- headers
请求返回的头部信息
Object
data
请求成功时返回的对象,如果请求发生错误,则为空
Object
- statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
- headers
请求返回的头部信息
Object
- Response
响应结果,详情请参见 提交任务
Object

相关参考