tencent cloud

文档反馈

提交视频标签任务

最后更新时间:2023-12-30 16:39:49

    功能描述

    提交一个视频标签任务。
    

    请求

    请求示例

    POST /jobs HTTP/1.1
    Host: <BucketName-APPID>.ci.<Region>.myqcloud.com
    Date: <GMT Date>
    Authorization: <Auth String>
    Content-Length: <length>
    Content-Type: application/xml
    
    <body>
    说明
    Authorization: Auth String(详情请参见 请求签名 文档)。
    通过子账号使用时,需要授予相关的权限,详情请参见 授权粒度详情 文档。

    请求头

    此接口仅使用公共请求头部,详情请参见 公共请求头部 文档。

    请求体

    该请求操作的实现需要有如下请求体。
    <Request>
    <Tag>VideoTag</Tag>
    <Input>
    <Object>input/demo.mp4</Object>
    </Input>
    <Operation>
    <VideoTag>
    <Scenario>Stream</Scenario>
    </VideoTag>
    <UserData>This is my data.</UserData>
    <JobLevel>0</JobLevel>
    </Operation>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <CallBack>http://callback.demo.com</CallBack>
    <CallBackFormat>JSON<CallBackFormat>
    </Request>
    具体的数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    Request
    保存请求的容器
    Container
    Container 类型 Request 的具体数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    Tag
    Request
    创建任务的 Tag:VideoTag
    String
    Input
    Request
    待操作的媒体信息
    Container
    Operation
    Request
    操作规则
    Container
    QueueId
    Request
    任务所在的队列 ID
    String
    CallBackFormat
    Request
    任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式
    String
    CallBackType
    Request
    任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型
    String
    CallBack
    Request
    任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调
    String
    CallBackMqConfig
    Request
    任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填。详情见 CallBackMqConfig
    Container
    Container 类型 Input 的具体数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    Object
    Request.Input
    执行视频标签任务的媒体文件名,目前支持 mp4、avi、mkv、wmv、rmvb、flv、mov 封装格式,视频时长超过30min的视频请 提交工单 处理
    String
    Container 类型 Operation 的具体数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    VideoTag
    Request.Operation
    指定该 VideoTag 任务参数
    Container
    JobLevel
    Request.Operation
    任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0
    String
    UserData
    Response.JobsDetail.Operation
    透传用户信息
    String
    Container 类型 VideoTag 的具体数据描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    限制
    Scenario
    Request.Operation.VideoTag
    场景类型,可选择视频标签的运用场景,不同的运用场景使用的算法、输入输出等都会有所差异
    string
    当前版本只适配 Stream 场景

    响应

    响应头

    此接口仅返回公共响应头部,详情请参见 公共响应头部 文档。

    响应体

    该响应体返回为 application/xml 数据,包含完整节点数据的内容展示如下:
    <Response>
    <JobsDetail>
    <Code>Success</Code>
    <Message/>
    <JobId>j8d121820f5e411ec926ef19d53ba9c6f</JobId>
    <State>Submitted</State>
    <CreationTime>2022-06-27T15:23:10+0800</CreationTime>
    <StartTime>-</StartTime>
    <EndTime>-</EndTime>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <Tag>VideoTag</Tag>
    <Input>
    <BucketId>test-123456789</BucketId>
    <Object>input/demo.mp4</Object>
    <Region>ap-chongqing</Region>
    </Input>
    <Operation>
    <VideoTag>
    <Scenario>Stream</Scenario>
    </VideoTag>
    <UserData>This is my data.</UserData>
    <JobLevel>0</JobLevel>
    </Operation>
    </JobsDetail>
    </Response>
    具体的数据内容如下:
    节点名称(关键字)
    父节点
    描述
    类型
    Response
    保存结果的容器
    Container
    Container 节点 Response 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    JobsDetail
    Response
    任务的详细信息
    Container
    Container 节点 JobsDetail 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Code
    Response.JobsDetail
    错误码,只有 State 为 Failed 时有意义
    String
    Message
    Response.JobsDetail
    错误描述,只有 State 为 Failed 时有意义
    String
    JobId
    Response.JobsDetail
    新创建任务的 ID
    String
    Tag
    Response.JobsDetail
    新创建任务的 Tag:VideoTag
    String
    State
    Response.JobsDetail
    任务的状态,为 Submitted、Running、Success、Failed、Pause、Cancel 其中一个
    String
    CreationTime
    Response.JobsDetail
    任务的创建时间
    String
    StartTime
    Response.JobsDetail
    任务的开始时间
    String
    EndTime
    Response.JobsDetail
    任务的结束时间
    String
    QueueId
    Response.JobsDetail
    任务所属的队列 ID
    String
    Input
    Response.JobsDetail
    该任务的输入资源地址
    Container
    Operation
    Response.JobsDetail
    该任务的规则
    Container
    Container 节点 Input 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Region
    Response.JobsDetail.Input
    存储桶的地域
    String
    Bucket
    Response.JobsDetail.Input
    存储结果的存储桶
    String
    Object
    Response.JobsDetail.Input
    输出结果的文件名
    String
    Container 节点 Operation 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    VideoTag
    Response.JobsDetail.Operation
    同请求中的 Request.Operation.VideoTag
    Container
    VideoTagResult
    Response.JobsDetail.Operation
    视频标签分析结果,任务未完成时不返回
    Container
    UserData
    Response.JobsDetail.Operation
    透传用户信息
    String
    JobLevel
    Response.JobsDetail.Operation
    任务优先级
    String
    Container 节点 VideoTagResult 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    StreamData
    Response.JobsDetail.Operation.VideoTagResult
    Stream 场景下视频标签任务的结果
    Container
    Container 节点 StreamData 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Data
    Response.JobsDetail.Operation.VideoTagResult.StreamData
    Stream 场景视频标签任务的结果列表
    Container
    SubErrCode
    Response.JobsDetail.Operation.VideoTagResult.StreamData
    算法状态码,成功为0,非0异常
    Container
    SubErrMsg
    Response.JobsDetail.Operation.VideoTagResult.StreamData
    算法错误描述,成功为 ok , 不成功返回对应错误
    Container
    Container 节点 Data 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Tags
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data
    视频标签、视频分类信息
    Container
    PersonTags
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data
    人物标签信息
    Container
    PlaceTags
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data
    场景标签信息
    Container
    ActionTags
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data
    动作标签信息
    Container
    ObjectTags
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data
    物体标签信息
    Container
    Container 节点 Tags (视频标签)的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Tag
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.Tags
    标签名称
    String
    TagCls
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.Tags
    标签分类名称
    String
    Confidence
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.Tags
    标签模型预测分数,取值范围[0,1]
    Float
    Container 节点 Tags (视频分类)的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Tag
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.Tags
    视频分类名称
    String
    Confidence
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.Tags
    标签模型预测分数,取值范围[0,1]
    Float
    Container 节点 PersonTags 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Name
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags
    人物名字
    String
    Confidence
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags
    标签模型预测分数
    Float
    Count
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags
    任务出现频次
    String
    DetailPerSecond
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags
    具体识别到人物出现的位置和时间信息
    Container
    Container 节点 DetailPerSecond 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    TimeStamp
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags.DetailPerSecond
    出现时间,单位为秒
    String
    Confidence
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags.DetailPerSecond
    标签模型预测分数
    Float
    BBox
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags.DetailPerSecond
    左上角为原点,物体的相对坐标
    Container
    Container 节点 BBox 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    X1
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags.DetailPerSecond.BBox
    坐标X1的相对位置
    String
    Y1
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags.DetailPerSecond.BBox
    坐标Y1的相对位置
    String
    X2
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags.DetailPerSecond.BBox
    坐标X2的相对位置
    String
    Y2
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags.DetailPerSecond.BBox
    坐标Y2的相对位置
    String
    Container 节点 PlaceTags 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Tags
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PlaceTags
    视频场景标签信息,可能不返回,内容同 Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.Tags
    Container
    StartTime
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PlaceTags
    片段起始时间,单位为秒
    String
    EndTime
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PlaceTags
    片段结束时间,单位为秒
    String
    StartIndex
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PlaceTags
    片段起始帧数
    String
    EndIndex
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PlaceTags
    片段结束帧数
    String
    ClipFrameResult
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PlaceTags
    单帧识别结果top1
    String
    Container 节点 ActionTags 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Tags
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.ActionTags
    视频动作标签信息,可能不返回,内容同 Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.Tags
    Container
    StartTime
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.ActionTags
    片段起始时间,单位为秒
    String
    EndTime
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.ActionTags
    片段结束时间,单位为秒
    String
    Container 节点 ObjectTags 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Objects
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.ObjectTags
    视频物体标签信息,可能不返回,内容同 Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.Tags
    Container
    TimeStamp
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.ObjectTags
    识别物体时间戳,单位为秒
    String
    Container 节点 Object 的内容:
    节点名称(关键字)
    父节点
    描述
    类型
    Name
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.ObjectTags.Objects
    物体名称
    Container
    Confidence
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.ObjectTags.Objects
    标签模型预测分数,取值范围[0,1]
    Float
    BBox
    Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.ObjectTags.Objects
    左上角为原点,物体的相对坐标, 内容同 Response.JobsDetail.Operation.VideoTagResult.StreamData.Data.PersonTags.DetailPerSecond.BBox
    Container

    错误码

    该请求操作无特殊错误信息,常见的错误信息请参见 错误码 文档。

    实际案例

    请求

    POST /jobs HTTP/1.1
    Authorization: q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0a1ICvR****&q-sign-time=1497530202;1497610202&q-key-time=1497530202;1497610202&q-header-list=&q-url-param-list=&q-signature=28e9a4986df11bed0255e97ff90500557e0ea057
    Host: examplebucket-1250000000.ci.ap-beijing.myqcloud.com
    Content-Length: 166
    Content-Type: application/xml
    
    <Request>
    <Tag>VideoTag</Tag>
    <Input>
    <Object>input/demo.mp4</Object>
    </Input>
    <Operation>
    <VideoTag>
    <Scenario>Stream</Scenario>
    </VideoTag>
    <UserData>This is my data.</UserData>
    <JobLevel>0</JobLevel>
    </Operation>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <CallBack>http://callback.demo.com</CallBack>
    <CallBackFormat>JSON<CallBackFormat>
    </Request>

    响应

    HTTP/1.1 200 OK
    Content-Type: application/xml
    Content-Length: 230
    Connection: keep-alive
    Date: Mon, 28 Jun 2022 15:23:12 GMT
    Server: tencent-ci
    x-ci-request-id: NTk0MjdmODlfMjQ4OGY3XzYzYzhf****
    
    <Response>
    <JobsDetail>
    <Code>Success</Code>
    <Message/>
    <JobId>j8d121820f5e411ec926ef19d53ba9c6f</JobId>
    <State>Submitted</State>
    <CreationTime>2022-06-27T15:23:10+0800</CreationTime>
    <StartTime>-</StartTime>
    <EndTime>-</EndTime>
    <QueueId>p2242ab62c7c94486915508540933a2c6</QueueId>
    <Tag>VideoTag</Tag>
    <Input>
    <BucketId>test-123456789</BucketId>
    <Object>input/demo.mp4</Object>
    <Region>ap-chongqing</Region>
    </Input>
    <Operation>
    <VideoTag>
    <Scenario>Stream</Scenario>
    </VideoTag>
    <UserData>This is my data.</UserData>
    <JobLevel>0</JobLevel>
    </Operation>
    </JobsDetail>
    </Response>