截图模板

视频截图基于截图模板发起,通过配置截图模板,您可以自定义视频截图的尺寸、数量、时间等参数。本文提供了Python SDK截图模板的API调用示例,包含创建及管理截图模板等。

接口调用说明

  • 本文提供的接口调用示例均通过AccessKey初始化客户端实例。

  • 接口的参数解释和返回字段的详细说明请访问阿里云OpenAPI门户,在各接口右侧的文档页签查看。

  • 本文仅提供部分复杂接口的代码示例,其余接口的SDK代码示例,可以通过阿里云OpenAPI门户获取。访问阿里云OpenAPI门户,在接口的左侧参数配置页签,填写需要的参数信息并发起调用后,在右侧的SDK示例页签,选择SDK版本,选择目标语言,查看并下载示例代码。

  • 本文均以V1.0版本的SDK为例进行接口调用,如需获取V2.0版本的SDK示例,请在通过阿里云OpenAPI门户获取SDK示例时,指定到对应的SDK版本。image.png

初始化客户端

使用前请先初始化客户端,请参见初始化

添加截图模板

调用AddVodTemplate接口,生成添加截图模板的SDK示例。

阿里云OpenAPI门户地址:AddVodTemplate

调用示例如下:

from aliyunsdkvod.request.v20170321 import AddVodTemplateRequest
def add_vod_template(clt):
    request = AddVodTemplateRequest.AddVodTemplateRequest()
    # 模板名称
    request.set_Name('Sample Snapshot Template')
    # 模板类型,固定值为Snapshot
    request.set_TemplateType('Snapshot')

    # 截图模板配置数据
    snapshotConfig = {'Count': 50, 'Interval': 1, 'SpecifiedOffsetTime': 0, 'Width': 200, 'Height': 200,
                      'FrameType': 'normal'}
    templateConfig = {'SnapshotConfig': snapshotConfig, 'SnapshotType': 'NormalSnapshot'}

    """
    # 可选项:雪碧图配置(雪碧图配置必须建立在普通截图配置之上)
    spriteSnapshotConfig = {'CellWidth': 120, 'CellHeight': 68, 'Columns': 3, 'Lines': 10, 'Padding': 20,
                            'Margin': 50, 'KeepCellPic': 'keep', 'Color': 'tomato'}
    snapshotConfig['SpriteSnapshotConfig'] = spriteSnapshotConfig
    templateConfig['SnapshotType'] = 'SpriteSnapshot'
    """

    request.set_TemplateConfig(json.dumps(templateConfig))


    request.set_accept_format('JSON')
    response = json.loads(clt.do_action_with_exception(request))
    return response

try:
    clt = init_vod_client()
    template = add_vod_template(clt)
    print(template['VodTemplateId'])
    print(json.dumps(template, ensure_ascii=False, indent=4))

except Exception as e:
    print(e)
    print(traceback.format_exc())

修改截图模板

调用UpdateVodTemplate接口,生成修改截图模板的SDK示例。

阿里云OpenAPI门户地址:UpdateVodTemplate

调用示例如下:

from aliyunsdkvod.request.v20170321 import UpdateVodTemplateRequest
def update_vod_template(clt):
    request = UpdateVodTemplateRequest.UpdateVodTemplateRequest()
    request.set_VodTemplateId('<templateId>')
    # 修改模板名称
    request.set_Name('New Snapshot Template Name')
    # 修改截图模板配置数据
    snapshotConfig = {'Count': 50, 'Interval': 1, 'SpecifiedOffsetTime': 0, 'Width': 200, 'Height': 200,
                      'FrameType': 'normal'}
    templateConfig = {'SnapshotConfig': snapshotConfig, 'SnapshotType': 'NormalSnapshot'}
    request.set_TemplateConfig(json.dumps(templateConfig))

    request.set_accept_format('JSON')
    response = json.loads(clt.do_action_with_exception(request))
    return response

try:
    clt = init_vod_client()
    template = update_vod_template(clt)
    print(json.dumps(template, ensure_ascii=False, indent=4))

except Exception as e:
    print(e)
    print(traceback.format_exc())

查询截图模板

  • 调用GetVodTemplate接口,生成查询单个截图模板信息的SDK示例。

    阿里云OpenAPI门户地址:GetVodTemplate

  • 调用ListVodTemplate接口,生成查询截图模板列表信息的SDK示例。

    阿里云OpenAPI门户地址:ListVodTemplate

删除截图模板

调用DeleteVodTemplate接口,生成删除截图模板的SDK示例。

阿里云OpenAPI门户地址:DeleteVodTemplate

相关文档