文档中心>媒体处理>实践教程>高光集锦能力接入

高光集锦能力接入

最近更新时间:2024-11-06 16:59:42

我的收藏

概述

高光集锦功能可以通过智能算法自动捕捉并生成视频中的精彩片段,为用户提供快速回顾与分享。




预设模板

媒体处理提供了高光集锦预设模板(模板ID:26),您可以基于该模板发起高光集锦任务。详细步骤请查看下文 发起高光集锦任务 部分。




发起高光集锦任务

场景一:处理离线视频文件

方式1:API 接入

1. API Explorer 快速验证

首先,请前往 媒体处理控制台 开通服务,确认已完成 COS授权
然后,进入媒体处理 API Explorer 在线调试页面,在左侧选择 发起媒体处理 接口。选择 AiAnalysisTask 任务,将 Definition 设置为 26(预设高光集锦模板)。ExtendedParameter 为扩展参数,通过该参数实现特定的能力,具体参数含义见下文 扩展参数 部分。
说明:
API explorer 会自动转换,因此 ExtendedParameter 填写对应 json 即可,不用转换成字符串。但是如果直接调用 API,需要对 json 字符串转义。ExtendedParameter参数示例:
{"hht":{"top_clip":10, "force_cls":5003, "need_vad":1, "threshold":0.9, "merge_time":60, "merge_type":0, "res_save_type":1}
参数含义请参考下文 扩展参数说明 部分。为保证处理效果,建议您与我们联系,线下对接确认具体配置。




2. 使用 API 发起

上文介绍了如何使用 API explorer 在线调用接口并调试。您也可以直接向腾讯云发起 POST 请求,接口请求域名:mps.tencentcloudapi.com。发起 POST 请求, definition 为预设高光集锦模板 ID(26),下面为请求的参考范例:
注意:
直接调用 API,在传入 ExtendedParameter 参数时,需要对 json 字符串转义。
{
"InputInfo": {
"Type": "URL",
"UrlInputInfo": {
"Url": "https://mg-aidata-1258344699.cos-internal.ap-guangzhou.tencentcos.cn/test/hht_test/MyStoryForYouEP39.mp4"
}
},
"OutputStorage": {
"Type": "COS",
"CosOutputStorage": {
"Bucket": "mg-aidata-1258344699",
"Region": "ap-guangzhou"
}
},
"OutputDir": "/test_data/",
"AiAnalysisTask": {
"Definition": 26,
"ExtendedParameter": "{\\"hht\\":{\\"top_clip\\":10, \\"force_cls\\":5003, \\"need_vad\\":1, \\"threshold\\":0.9, \\"merge_time\\":60, \\"merge_type\\":0, \\"res_save_type\\":1}"
}
}

3. 查询任务结果

任务回调:在使用 ProcessMedia 发起媒体处理任务时,可以通过 TaskNotifyConfig 参数设置回调信息。当任务处理完成后,会通过配置的回调信息回调任务结果,您可以通过 ParseNotification 解析事件通知结果。
接口查询任务:使用 ProcessMedia 返回的 TaskId 调用 查询任务详情 接口查询任务处理结果。解析 WorkflowTask 下的 AiAnalysisResultSet字段即可。
控制台查询任务:进入控制台 点播任务管理,任务列表中会展示刚发起的任务。



当子任务状态为“成功”时,您可以进入 COS Bucket > 输出 Bucket 中,找到您的输出目录,在目录下以hht开头的文件即为高光集锦输出文件,包括每个集锦片段的。




方式2:控制台发起任务(零代码自动生成)

注意:
控制台发起任务需要使用预设模板(预设高光集锦参数)。由于集锦存在一些特殊参数无法在模板中配置,可能会影响高光集锦的效果,因此更推荐您使用 API 的方式接入。

1. 创建任务

1.1. 进入 媒体处理控制台,依次点击创建任务 > 快速创建点播处理任务。



1.2. 首先指定输入视频文件,目前智能横转竖功能支持两种输入来源:腾讯云对象存储(COS)、URL 下载地址。暂不支持 AWS S3。
1.3. 然后,在步骤“处理输入文件”处,加入智能分析节点。



1.4. 在弹出的智能分析设置抽屉中,选择高光集锦预设模板(模板ID:26)



1.5. 最后,指定输出视频保存路径后,即可单击创建发起任务。




2. 查询任务结果

参考上文 3. 查询任务结果

3. 自动触发任务(可选能力)

若您希望实现:在 COS 桶中上传了视频文件,并自动按照预设参数进行智能擦除处理。您可以:
3.1. 在创建任务时单击保存此编排,在弹出的窗口中配置触发Bucket、触发目录等参数。



3.2. 然后进入点播编排列表,找到刚创建好的编排,在启动处开启按钮即可。后续在触发目录下新增的视频文件,将自动按照该编排预设的流程和参数发起任务,并将处理后的视频文件保存到编排配置的输出路径中。
注意:
启用编排成功后,需要3-5分钟才会生效。




场景二:处理直播流

1、发起请求

通过 API Explorer 发起请求

调用 API 发起直播流处理任务可参见 对直播流发起处理 文档。在文档中单击内容描述的 API Explorer 调试,进入页面填写相关参数信息后即可发起在线调用。
其中 OutputStorage 可以参考上文处理离线视频场景填写, ExtendedParameter 举例如下,具体参数含义见 扩展参数 部分。
{"hht":{"top_clip":10, "force_cls":5003, "need_vad":1, "res_save_type":1}




通过 API 发起

直接向腾讯云发起 POST 请求, definition 为创建的视频内容分析模板 id,下面为请求的参考范例:
{
"Url": "https://mg-aidata-1258344699.cos-internal.ap-guangzhou.tencentcos.cn/material/news/cctv/20180512_CCTV-TBO65hNxKFQ.mp4",
"TaskNotifyConfig": {
"NotifyType": "URL",
"NotifyUrl": "http://test.cloud.com/callback"
},
"OutputStorage": {
"Type": "COS",
"CosOutputStorage": {
"Bucket": "mg-aidata-1258344699",
"Region": "ap-guangzhou"
}
},
"OutputDir": "/output/",
"AiAnalysisTask": {
"Definition": 47064,
"ExtendedParameter": "{\\"hht\\":{\\"top_clip\\":10, \\"force_cls\\":5003, \\"need_vad\\":1, \\"threshold\\":0.9, \\"merge_time\\":60, \\"merge_type\\":0, \\"res_save_type\\":1}"
}
}

2、接收回调

参见 解析直播流处理结果 文档,解析 AiAnalysisResultInfo 字段。

3、任务终止协议

参见 任务管理文档,对已发起的任务进行管理。

扩展参数说明

参数
是否必填
类型
说明
force_cls
No
int
指定集锦类别:
5003:综艺/影视
4001:足球
4002:篮球
1001:王者荣耀
100101:王者荣耀竞赛
1003:英雄联盟
need_vad
No
int
vad 用于判断视频一句话结尾,vad 扩展能够让视频语音完整,默认开启。
1:使用 vad
0:不使用
threshold
No
float
置信度阈值,低于阈值的片段都过滤掉,每种类型的集锦都会有默认阈值设置。
备注:建议客户初次使用时不设置
res_save_type
No
int
是否存储结果,默认存储。
1:存储结果
0:只输出时间段
output_pattern
No
string
输出视频命名格式,{}表示占位符。
{year}-{month}-{day}-{hour}-{minute}-{second}_{start_dts}-{end_dts}-{timestamp}-{session}.mp4
默认输出格式:
hht-{year}{month}{day}{hour}{minute}-{session}-{timestamp}-index.mp4
image_pattern
No
string
image-{start_dts}.jpg
可以占位的参数同上
默认输出格式:
hht-{year}{month}{day}{hour}{minute}-{session}-{timestamp}-index.jpg
merge_type
No
int
注意:仅离线场景可用,默认值:5003 不合并,其他场景合并。
是否合并结果为一个视频:
1:合并(top_clip 参数不生效)
0:不合并(merge_time 参数不生效)
merge_time
No
int
注意:仅离线场景可用, 默认值:5003 为实际输出,其他场景最长不超过一小时。
合并成一个视频时,指定视频输出长度。