tencent cloud

文档反馈

视频审核

最后更新时间:2024-03-04 16:55:55

    简介

    内容审核功能是由 数据万象(Cloud Infinite,CI)提供的,数据万象将处理能力与 COS SDK 完全结合,您可以直接按照本篇文档指引进行使用。
    说明:
    使用内容审核服务需拥有数据万象使用权限:
    主账号请 单击此处 进行角色授权。
    子账号请参见 授权子账号接入数据万象服务 文档。
    本文档提供关于视频审核的相关的 API 概览以及 SDK 示例代码。
    API
    操作描述
    用于提交一个视频审核任务
    用于查询指定的视频审核任务

    创建任务

    PutVideoAuditingJob 接口用于提交一个视频审核任务。您可以通过主动设置回调地址接收审核信息,也可以通过 JobId 进行查询。

    方法原型

    func (s *CIService) PutVideoAuditingJob(ctx context.Context, opt *PutVideoAuditingJobOptions) (*PutVideoAuditingJobResult, *Response, error)

    请求示例

    // 将 examplebucket-1250000000 和 COS_REGION修改为真实的信息
    // CI 任务需要提供CIURL
    bu, _ := url.Parse("https://examplebucket-1250000000.cos.COS_REGION.myqcloud.com")
    cu, _ := url.Parse("https://examplebucket-1250000000.ci.COS_REGION.myqcloud.com")
    b := &cos.BaseURL{BucketURL: bu, CIURL: cu}
    c := cos.NewClient(b, &http.Client{
    Transport: &cos.AuthorizationTransport{
    SecretID: os.Getenv("SECRETID"),
    SecretKey: os.Getenv("SECRETKEY"),
    }
    })
    opt := &cos.PutVideoAuditingJobOptions{
    InputObject: "demo.mp4",
    Conf: &cos.VideoAuditingJobConf{
    DetectType: "Porn,Ads",
    Snapshot: &cos.PutVideoAuditingJobSnapshot{
    Mode: "Interval",
    TimeInterval: 50.5,
    Count: 100,
    },
    },
    }
    res, _, err := c.CI.PutVideoAuditingJob(context.Background(), opt)

    参数说明

    type PutVideoAuditingJobOptions struct {
    InputObject string
    InputUrl string
    InputDataId string
    InputUserInfo *UserExtraInfo
    Conf *VideoAuditingJobConf
    Type string
    }
    type UserExtraInfo struct {
    TokenId string
    Nickname string
    DeviceId string
    AppId string
    Room string
    IP string
    Type string
    }
    type VideoAuditingJobConf struct {
    DetectType string
    Snapshot *PutVideoAuditingJobSnapshot
    Callback string
    CallbackVersion string
    CallbackType int
    BizType string
    DetectContent int
    }
    type PutVideoAuditingJobSnapshot struct {
    Mode string
    Count int
    TimeInterval float32
    }
    参数名称
    参数描述
    类型
    InputObject
    当前 COS 存储桶中的视频文件名称,例如在目录 test 中的文件 video.mp4,则文件名称为 test/video.mp4。Object 和 Url 只能选择其中一种。
    String
    InputUrl
    视频文件的链接地址,例如 http://examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/test.mp4。Object 和 Url 只能选择其中一种。
    String
    InputDataId
    视频标识,该字段在结果中返回原始内容,长度限制为512字节。
    String
    InputUserInfo
    用户业务字段。
    Object
    Type
    审核的任务类型,直播流审核固定为 live_video。
    String
    Conf
    审核规则配置。
    Struct
    BizType
    审核策略,不填写则使用默认策略。可在控制台进行配置,详情请参见 设置审核策略
    String
    DetectType
    审核的场景类型,有效值:Porn(涉黄)、Ads(广告),可以传入多种类型,不同类型以逗号分隔,例如:Porn,Ads。如您有更多场景的审核需要,请使用 BizType 参数。
    String
    Snapshot
    视频画面的审核通过视频截帧能力截取出一定量的截图,通过对截图逐一审核而实现的,该参数用于指定视频截帧的配置。
    Struct
    Callback
    审核结果以回调形式发送至您的回调地址,支持以 http:// 或者 https:// 开头的地址,例如:http://www.callback.com
    String
    CallbackVersion
    回调内容的结构,有效值:Simple(回调内容包含基本信息)、Detail(回调内容包含详细信息)。默认为 Simple。
    String
    CallbackType
    回调片段类型,有效值:1(回调全部截帧和音频片段)、2(仅回调违规截帧和音频片段)。默认为 1。
    Integer
    DetectContent
    用于指定是否审核视频声音,当值为0时:表示只审核视频画面截图;值为1时:表示同时审核视频画面截图和视频声音。默认值为0。
    Integer
    Mode
    截帧模式,默认值为Interval。Interval 表示间隔模式;Average 表示平均模式;Fps 表示固定帧率模式。Interval 模式:TimeInterval,Count 参数生效。当设置 Count,未设置 TimeInterval 时,表示截取所有帧,共 Count 张图片。Average 模式:Count 参数生效。表示整个视频,按平均间隔截取共 Count 张图片。Fps 模式:TimeInterval 表示每秒截取多少帧,未设置 TimeInterval 时,表示截取所有帧,Count 表示共截取多少帧。
    String
    Count
    视频截帧数量,范围为(0, 10000]。
    Integer
    TimeInterval
    视频截帧频率,范围为(0, 60],单位为秒,支持 float 格式,执行精度精确到毫秒。
    Float

    结果说明

    调用 PutVideoAuditingJob 函数,会解析 api 返回的 xml 内容到 PutVideoAuditingJobResult 结构,具体返回参数可查看 提交视频审核任务 文档。

    查询任务

    GetVideoAuditingJob 接口用来查询指定的视频审核任务。您可以根据视频审核任务的 JobId 来查询视频审核结果。

    方法原型

    func (s *CIService) GetVideoAuditingJob(ctx context.Context, jobid string) (*GetVideoAuditingJobResult, *Response, error)

    请求示例

    // 将 examplebucket-1250000000 和 COS_REGION修改为真实的信息
    // CI 任务需要提供CIURL
    bu, _ := url.Parse("https://examplebucket-1250000000.cos.COS_REGION.myqcloud.com")
    cu, _ := url.Parse("https://examplebucket-1250000000.ci.COS_REGION.myqcloud.com")
    b := &cos.BaseURL{BucketURL: bu, CIURL: cu}
    c := cos.NewClient(b, &http.Client{
    Transport: &cos.AuthorizationTransport{
    SecretID: os.Getenv("SECRETID"),
    SecretKey: os.Getenv("SECRETKEY"),
    }
    })
    jobId := "avce25f391a72e11eb99f********"
    res, _, err := c.CI.GetVideoAuditingJob(context.Background(), jobId)

    参数说明

    参数名称
    参数描述
    类型
    jobId
    任务 ID
    String

    结果说明

    调用 GetVideoAuditingJob 函数,会解析 api 返回的 xml 内容到 GetVideoAuditingJobResult 结构,具体返回参数可查看 查询视频审核任务结果 文档。
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持