使用 AWS Elemental MediaConvert 进行无服务器视频转码 - HLS 分发与缩略图生成
将基于文件的视频以广播级质量转码,一次性生成 HLS、DASH、MP4 等多种格式。解析通过作业模板和队列优先级控制构建大规模视频处理管道的方法。
MediaConvert 概述
AWS Elemental MediaConvert 是将基于文件的视频内容以广播级质量转码的服务。将输入文件(MP4、MOV、MXF 等)批量转换为 HLS、DASH、MP4、CMAF 等多种格式并输出到 S3。1 个作业可同时生成多个输出(分辨率、比特率、编解码器的组合),并自动生成自适应比特率流媒体所用的清单文件。MediaLive 专注于直播流媒体的实时编码,而 MediaConvert 则针对 VOD(Video on Demand)内容的基于文件的转码进行了优化。
作业设置与编解码器
MediaConvert 的作业由输入设置、输出组和输出设置 3 个层级构成。输入设置中指定源文件的 S3 路径、裁剪(开始和结束时间)、去隔行和降噪。输出组定义 HLS 组、DASH 组、文件组等分发格式,并在各组内设置多个输出(720p/1080p/4K)。编解码器支持 H.264(AVC)、H.265(HEVC)、AV1、VP9,H.265 能以低约 50% 的比特率实现与 H.264 同等的画质。AV1 的压缩效率更高,但编码时间会变长。此外,H.265、AV1、XAVC 等编解码器的输出属于 Professional Tier 的范围,单价高于仅用 H.264 即可完成的情况(截至 2026 年 8 月)。编解码器的选择不仅影响画质和编码时间,也是影响计费的设计决策。可以用作业模板保存常用的设置,并从 API 或控制台重复使用。
管道与自动化
可以构建这样的视频处理管道:用 EventBridge 检测文件上传到 S3,再从 Lambda 函数自动启动 MediaConvert 作业。作业的完成和错误也会作为 EventBridge 事件通知,因此可以将后续处理(元数据更新、CDN 缓存失效、发送通知)自动化。通过队列的优先级控制,可以实现优先处理紧急作业、在低优先级队列中执行批量处理这样的运维方式。预留队列(RTS = Reserved Transcode Slots)以固定费用确保专用的转码容量,以稳定的吞吐量处理大量作业。不过,RTS 的购买是 12 个月的承诺,购买后无法取消,也无法减少槽位数。即使没有用满队列,也会按确保的容量计费,因此适合在能预见稳定处理量时选择。通过 DRM(Digital Rights Management)集成,可以对输出应用 Widevine、FairPlay、PlayReady 的内容保护。
MediaConvert 的费用
MediaConvert 的费用是根据输出的分辨率、编解码器、帧率和质量设置(Single pass / Single pass HQ)按量计费(截至 2026 年 8 月,弗吉尼亚北部区域和东京区域)。以下均为 H.264(AVC)、30 fps 及以下、Single pass HQ 的每分钟输出单价。弗吉尼亚北部区域的 Basic Tier 中,SD(480p 及以下)为 0.0075 美元,HD(720p/1080p)为 0.015 美元,4K UHD 为 0.030 美元。Professional Tier 中,SD 为 0.012 美元,HD 为 0.024 美元,4K UHD 为 0.048 美元。东京区域比这更高,Basic Tier 为 SD 0.0085 美元、HD 0.017 美元、4K UHD 0.034 美元。Professional Tier 为 SD 0.0136 美元、HD 0.0272 美元、4K UHD 0.0544 美元。帧率越高单价也越高,弗吉尼亚北部区域的 Basic Tier、HD 中,超过 30 fps 且不超过 60 fps 为 0.0188 美元,超过 60 fps 且不超过 120 fps 为 0.0225 美元。Professional Tier 适用于使用 HDR10+ 或 Dolby 系列音频等高级功能的情况,以及使用 H.265(HEVC)、AV1、XAVC 等输出编解码器的情况。例如,HD 的 H.265 输出(同样条件)在弗吉尼亚北部区域为每分钟 0.048 美元,与用 H.264 输出同样 HD 时的 Basic Tier 单价(0.015 美元)差距很大。 预留队列(RTS)是按确保的槽位数支付固定费用的形式,在处理量稳定且较多的工作负载中,单价可以低于按需。不过,购买时即为 12 个月的承诺,购买后无法取消,也无法减少槽位数(增加时,会切换为槽位数更多的新的 12 个月承诺)。承诺期结束后队列仍会保留,但不再执行作业,因此要结合自动续订的设置事先确定运维方针。估算时,不仅要考虑输出的数量,还要考虑到单价随分辨率、编解码器、帧率的每种组合而变化,并按自适应比特率分发所生成的全部输出的合计时长计算。
自适应比特率分发的设计
在根据观众的网络状况切换画质的自适应比特率分发中,关键在于设计多种分辨率和比特率的输出。从低画质到高画质组成阶梯式的多个版本(即所谓的阶梯),让播放器能根据带宽选择最优的版本。1 个作业即可批量生成所有阶梯,HLS 和 DASH 的清单也会自动生成。采用能在多种分发格式之间共用同一素材的 CMAF,可以减少存储容量和运维上的重复。这是兼顾观看体验与分发效率、构成分发设计核心的部分。
与 CloudFront 的分发联动
转码后的视频,通常以 S3 为源站,从 CloudFront 分发。通过在边缘缓存,可以以低延迟送达全球各地的观众,同时也能减轻源站的负载。对于付费内容,可以用签名 URL 或签名 Cookie 限制访问,只让获得许可的观众播放。用 EventBridge 检测转码完成,并根据需要更新 CDN 缓存,这样的联动也可以自动化。将从转换到分发组装为连贯的管道,可以将运维的工作量降到最低。
字幕、音频与无障碍
MediaConvert 也支持字幕和多条音轨的处理。字幕可以以 WebVTT 等格式添加,有助于确保照顾听障人士的无障碍性,以及支持多语言。音频可以同时包含多种语言的音轨,让观众能够切换。按照分发目的地的标准进行统一音量电平的响度调整,就能避免不同内容之间音量参差不齐带来的不适。不仅是画面,连字幕和音频也一并调整好,就能实现对广泛观众都易于使用的分发。
画质与处理效率的优化
要在有限的比特率下保持画质,以质量为基准自动调整所需比特率的编码方式很有效。在维持一定质量的同时,根据场景优化数据量,因此可以毫无浪费地提供高画质。新的编解码器压缩效率高,但编码耗时较长,因此要在分发规模与处理时间之间权衡选择。处理大量视频时,要利用加速处理的功能,以及按用途分开队列来控制优先级的机制,使紧急作业与批量处理得以兼顾。在成本、质量与速度之间找到平衡点来进行设计。
总结
AWS Elemental MediaConvert 是将基于文件的视频以广播级质量转码,一次性生成 HLS、DASH、MP4 等多种格式的服务。通过 EventBridge 和 Lambda 实现自动化管道、队列优先级控制和 DRM 集成,构建 VOD 内容的大规模处理工作流。
参考资料(AWS 官方)
本页的第一手信息来源是 AWS 官方网站及官方文档。最新的规格与价格请以下列官方页面为准。
如本页内容与官方文档不一致,请以官方文档为准。