本文为您介绍媒体处理中的几个基本概念及其关系,以便您更好的理解和使用媒体处理服务。
处理流程

- 同步提交作业:用户侧同步提交待处理作业。
- 异步提交作业:作业按提交顺序和优先级进入管道中排队。
- 发送消息通知:若管道配置了消息服务MNS,则作业执行完毕后发送消息通知。
概念介绍
- 作业
作业在媒体处理服务里面是一个抽象的概念,包含多种类型的作业,如转码作业、截图作业、媒体信息作业等。
在一个作业中,包含3个关键信息:输入、输出和参数。输入和输出设置作业执行时的输入文件以及执行后的输出文件,参数则用来设置执行具体功能的详细配置。
- 管道当用户通过控制台或API接口提交作业后,作业会进入管道中进行排队,根据优先级和提交顺序依次执行。说明 管道中的作业可以有多种优先级。通过调用API提交的作业可以自定义优先级,最高为10,最低为1。通过控制台提交的作业优先级默认为6,不能修改。相同优先级的作业之间,提交作业时间早的比晚的先执行,不同优先级的作业之间,高优先级的比低优先级的先执行。
- 参数
- 模板参数
转码作业参数多,每次提交转码作业时需要填写的参数重复部分较多。转码模板为解决这一问题而设,其本质是将一些转码作业中常用的参数组合后供转码作业调用。可以减少提交作业需要填写的参数数量,简化提交作业的代码。模板可以在不同的作业中重复使用。
- API参数
如果给每种不同的参数组合都创建模板,会导致模板的数量剧增,也使得模板管理变的复杂。所以不仅可以在模板中设置参数,也可以在实际调用API时设置对应的参数。在API中设置的参数只对当前作业生效。
- 覆盖顺序
在调用提交转码作业接口时,如果既指定了转码模板,又设置了API参数,则API参数比模板中对应参数的优先级更高,会覆盖模板中对应的参数。
例如:同一个视频可以转码输出多种清晰度(高清、标清等),不同清晰度的容器格式(MP4)、编码标准(H.264)、帧率(25帧)是相同的,只有码率和分辨率不同。就可以先创建(MP4+H.264+25 FPS+2 Mbps+1280×720)这样一个默认参数组合模板。调用API时,如果不设置API参数,则按照默认码率和分辨率(2 Mbps+1280×720)执行作业,如果设置API参数中的码率和分辨率为(4 Mbps+1920×1080),则按照API参数(4 Mbps+1920×1080)执行作业。
- 模板参数
- 作业执行和结果
作业类型不同,执行所需的时间也不同,一些作业能很快完成,但是大部分的作业都无法即时完成。由此将作业执行分为同步和异步两种方式。
- 同步
同步方式(例如:截图作业)的结果会立即返回。
- 异步异步方式(例如:转码作业)的结果有2种查询方式:定时轮询和消息通知。
- 定时轮询
每个作业都有一个唯一作业ID来标识,在提交作业时会同步返回给调用方,之后可以在控制台或API接口返回数据中查看作业ID,通过作业ID查询作业结果。这种方式的缺点是不够实时。
- 消息通知管道配置消息通知,就能及时获得作业结果。消息通知中包含了几个重要的信息:作业ID、用户数据(UserData)和结果。
- 作业ID
提交作业时记录下作业ID,然后和消息通知的作业ID对比,就能知道是哪个作业的结果。
- 用户数据
提交作业时,可以填写自定义的用户数据参数(例如:商品ID),然后消息通知中会返回自定义的用户数据参数,这样可以不需要在业务系统中记录作业ID,使用自定义的用户数据来关联业务系统。
- 作业ID
- 定时轮询
- 同步