tencent cloud

文档反馈

工作流

最后更新时间:2022-06-06 11:28:47

    工作流表示对一个源文件(音视频文件)发起的一系列作业任务的集合,这些任务以流水线的形式向前执行,因此称为“工作流”。工作流中的作业任务可以是并行的,也可以是串行的,作业任务在媒体处理中一般简称“任务”,工作流示意图如下:

    符号 含义
    圆形 表示任务的开始和结束
    菱形 表示任务的分解
    圆角矩形 表示具体任务的执行单元
    圆点 表示任务的组合或合成
    箭头 表示不同任务或相同任务的不同阶段的执行路径

    以媒体处理为例,工作流包含转码、采样截图、时间点截图、转动图、雪碧图以及水印等作业任务。典型的媒体处理任务工作流示例如下:

    转码开始后,如果包含多个规格的转码任务,如标清、高清转码以及多尺寸截图等,则这些任务会被分解,然后并行执行,各转码子任务完成后再将结果进行合并,最后任务结束。

    工作流原理

    以媒体处理为例,工作流程主要包括配置工作流、触发转码、转码任务处理以及发送事件通知等。工作流原理图如下:

    1. 配置工作流:管理员通过控制台配置工作流。前置工作包括申请 CMQ 和 COS Bucket,并对媒体处理服务角色进行相应授权。
    2. 触发转码:上传者通过 SDK 或控制台将音视频文件上传到申请的 COS Bucket,此时会触发绑定到该 Bucket 上的工作流任务,即触发转码任务,开发者也可以通过 API ProcessMedia 来对单个文件发起转码任务。
    3. 转码任务处理:在工作流处理任务的过程中,会对 COS 文件进行读写操作,如下载源文件、上传转码后的文件等。
    4. 发送事件通知:工作流处理结束后,媒体处理会将任务完成消息发送到上述 CMQ,然后开发者可通过 CMQ 接口接收该事件消息。
      说明:

      • 工作流简介请参见 工作流,工作流设置请参见 设置工作流
      • 在确认文件转码成功后,您可以继续进行后续的业务逻辑,如通过 CDN 分发转码后的视频等。

    配置工作流

    如果您要实现文件上传时自动触发转码任务,则需要预先配置工作流。工作流会对指定 COS Bucket 中上传的文件自动发起特定的转码任务,并将转码结果文件上传到指定的相同或不同 COS Bucket。

    如果您不需要上传时自动触发转码任务,则可以通过调用 API 的方式主动触发单个文件转码任务,此时无需配置工作流。

    触发转码

    触发转码任务包括自动触发和主动触发两种方式:

    • 自动触发:通过配置工作流,文件上传时会自动触发转码任务。
    • 主动触发:通过调用 API 发起转码任务,然后通过 CMQ 接收完成事件通知或通过 TaskId 主动查询任务完成状态。详细请参见 主动发起转码
    说明:

    • 图中第5步表示开发者可通过调用 API 查询任务状态,参数为发起任务返回的 TaskId。
    • 图中红色框区域表示可选,即在主动触发转码的情况下,开发者可选择通过 CMQ 接收事件通知,也可以如图中第5步通过 API 查询任务状态信息。

    转码任务处理

    转码任务处理包括转码、截图、水印等任务处理以及转码结果文件上传。在任务具体执行过程中,任务会分解成多个子任务,子任务间以并行或串行的方式进行处理,从而加快处理速度。

    如果任务处理完成,则媒体处理服务会将转码结果文件上传到您指定的 COS Bucket。如果转码结果文件上传失败,则任务最终状态为失败。

    发送事件通知

    在转码任务处理完成后(成功或失败),媒体处理服务会将该文件的转码结果信息返回给您,您需要接收该消息通知并作出适当处理。

    联系我们

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

    技术支持

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

    7x24 电话支持