天天看点

畅聊视频点播与媒体转码工作流

视频点播和媒体转码(后续简称 mts )工作流服务均提供了音视频的点播服务,功能点上也存在相同之处,那么我们用户应该如何在两个产品中选择适合自己的产品呢?下面我们一起查看下它们的异同点。

mts 工作流服务是整合了对象存储(后续简称 oss )的存储访问功能、 mts 的转码功能、内容分发网络(后续简称 cdn )的资源加速功能、消息服务(后续简称 mns )的消息通知功能和访问控制(后续简称 ram )的权限管理功能的产品,提供整套视频点播解决方案,帮助用户完成从视频资源上传、视频资源转码、转码进度通知、媒体资源管理和访问加速整套功能。

同样的,视频点播产品也提供视频资源上传、转码、媒体资源管理和播放的功能。相比于 mts 工作流服务有以下区别点:

1. 服务独立化

相比于 mts 工作流服务集成多个产品提供解决方案的方式,视频点播提供了独立的产品封装了解决方案,用户仅需要一键开通视频点播产品即可以完整使用,无需在额外开通更多产品。

2. 白盒转黑盒

mts 工作流服务提供了详细的输入、转码、截图、消息通知和发布状态的设置,用户可以根据业务要求自行配置并上线应用。该功能一方面提供了详细的配置项可以让用户匹配更细粒度的业务要求,同时也对客户的技术水平要求较高。而视频点播产品则将对应的功能黑盒化,用户仅需配置全局的转码和水印设置后上传视频即可直接播放使用,降低用户的使用难度。

3. 标准化模板

mts 工作流中的转码任务中用户可以选择需要使用的转码模板,该模板可以使用 mts 系统预置模板(包括智能模板和静态模板)和自定义模板,用户对转码任务的可控性更高。而视频点播则提供标准化转码模板,提供了原画的非转码流和流畅、标清、高清和超清四种转码流,分别对应了四种码率和分辨率级别,用户可以根据自己的要求配置后使用;同时可以设置 hls 或者 mp4 的视频封装格式,让客户可以尽可能便捷操作。

畅聊视频点播与媒体转码工作流

                                                                        图1. 视频点播转码模板设置截图

4. 媒体资源管理

mts 工作流服务上传视频到用户自己的媒体 bucket 中,因此用户可以直接获取该媒体资源地址并根据 bucket 的权限和媒体的发布状态进行安全控制。而视频点播的媒体上传至视频点播产品的 bucket 中,用户无法直接获取得到媒体播放 url ,需要根据视频点播专门提供的播放器根据视频的 vid 播放。

5. 消息通知

mts 工作流服务集成 mns 可实现将工作流的执行状态回调给用户,让用户可以判断当前对视频的操作状态并执行不同的操作逻辑。工作流执行的过程中会在工作流触发和结束的时候分别会向 mns 发送回调消息,用户可以设置队列或者通知两种不同的消息类别接收消息。而视频点播在开启回调开关并配置回调接收地址后,每个媒体在上传完成和转码完成后分别会接收到一条 post 请求回调消息获取上传状态和转码状态(暂时仅有通知方式)。

畅聊视频点播与媒体转码工作流

                                                                        图2. 视频点播回调设置截图

6. 访问控制

mts 工作流服务支持使用 ram 将其权限分配给子账号,以控制子账号的访问风险,提升安全控制粒度。可以分别控制 oss 、mts 、mns 和 cdn 产品的权限以实现更高的安全防护。而视频点播暂时不支持 ram 子账号控制视频点播。

1. 视频资源上传

而视频点播的媒体则统一存储在华东2(cn-shanghai)数据中心,并且操作 bucket 是视频点播统一的 bucket ,而非用户的 bucket ,因此用户是无法直接通过本身账号的 accesskeyid 和 accesskeyseret 调用 oss sdk上传的。其上传操作包括两步:

1) 获取上传凭证和地址:用户需要先通过 createuploadvideo 接口获取上传凭证和地址。上传凭证 uploadauth 和地址 address 是根据文件名称、文件大小和标题随机生成的,并且该上传凭证是有过期时间的(凭证过期s时间为3600秒),当超过过期时间还需要通过 refreshuploadvideo 接口重新获得 uploadauth 。下面是java sdk的示例代码:

2) 上传媒体资源:获取上传凭证和地址后即可使用对视频点播封装的 sdk 直接上传即可,如下面 javascript 代码片段:

2. 视频转码和截图

畅聊视频点播与媒体转码工作流

                                                                        图3 mts 工作流拓扑结构设置截图

畅聊视频点播与媒体转码工作流

                                                                        图4 mts 工作流转码节点的配置截图

畅聊视频点播与媒体转码工作流

                                                                        图5 mts 工作流截图节点的配置截图

视频点播则提供了标准化模板进行转码(如上图1所示)。视频点播提供了四种清晰度和两种封装格式的模板,用户需要哪种模板的转码操作直接在全局设置中勾选即可,不需要设置转码模板的视频、音频和封包参数。这样所有上传到视频点播的视频即会自动按照全局的转码设置进行转码,而对应的媒体在点播系统即会转码为 mp4 或者 hls 封装格式。而水印则可以设置水印位置、偏移量和水印图片(如图6所示)后并启用水印则直接生效。

畅聊视频点播与媒体转码工作流

                                                                        图6 视频点播水印的配置截图

3. 视频资源管理

视频点播则会将所有上传的视频放在“视频管理”页面中,点击“管理”后可以查看到视频的详细信息(如图7所示),包括视频id、标题、描述和截图等详细的视频信息,但请注意对应视频并不提供具体的 url 地址,用户仅能够通过视频点播的播放器输入鉴权和视频id进行播放。这样可起到对视频资源的url防护功能。

畅聊视频点播与媒体转码工作流

                                                                        图7 视频点播媒体信息管理截图

4. 视频播放和加密

mts 工作流针对于视频点播的解决方案提供了更加详备和丰富的功能供用户使用满足用户的多种业务场景,但是使用过程对于用户有较高的要求,需要深入理解工作流原理以及配置对应的回调服务器和调用 api/sdk 的应用配合使用。而视频点播则主要提供了更为简便的点播方案,帮助用户可以很便捷的创建自己的视频点播业务,其中帮助用户封装了细节处理思路降低用户的使用成本,但是可变性相对较低。