CMSF 与 CMAF 并非两种相互竞争的媒体格式之间的二选一。CMAF 定义了标准化地对分段媒体进行封装的方式,而 CMSF 则将 CMAF 封装的媒体映射到MOQ(Media over QUIC,基于 QUIC 的媒体传输)工作流中。从实践角度看,CMSF 将熟悉的 CMAF 能力带入了现代发布-订阅式传输架构。这种便利性使得 CMSF 在自适应码率流传输、内容保护和现有媒体工作流复用方面颇具吸引力。
本文将解释这些格式之间的关系、CMSF 如何与 MOQ 协同工作,以及如何在基于 CMAF 的 CMSF 封装做出选择。

CMSF 与 CMAF 的主要区别
| 类别 | CMAF | CMSF |
|---|---|---|
| 全称 | Common Media Application Format(通用媒体应用格式) | CMAF-Compliant MOQT Streaming Format(CMAF 兼容 MOQT 流传输格式) |
| 主要作用 | 封装分段媒体 | 将 CMAF 封装的媒体映射到 MOQT 轨道(tracks)、组(groups)和对象(objects) |
| 传输关系 | 与传输协议无关;常用于 HLS 和 MPEG-DASH | 专为 MOQ Transport 设计 |
| 自适应码率支持 | 使用对齐的轨道和切换集(switching sets) | 将 CMAF 切换集映射为独立、对齐的 MOQT 轨道 |
| 内容保护 | 支持 ISO Common Encryption(ISO 通用加密) | 复用通用加密和成熟的 DRM 信令 |
| 相对开销 | 更丰富的 ISO BMFF 结构 | 在 MOQ 内保留 CMAF 盒(boxes)和初始化数据 |
| 最佳适用场景 | 可扩展的直播与点播分发 | 重视 CMAF 兼容性、ABR 和 DRM 的 MOQ 应用 |
CMSF 与 CMAF 的核心区别在于作用范围。CMAF 规定了媒体如何组织构建;CMSF 则规定了这种 CMAF 结构如何在 MOQ 流传输工作流中呈现。
什么是 CMAF?
CMAF,即 Common Media Application Format(通用媒体应用格式),是一种用于分段音频、视频、字幕及相关数据的标准化媒体应用格式。它由ISO/IEC 23000-19 定义,构建在 ISO Base Media File Format(ISO 基础媒体文件格式)之上。CMAF 是一种封装格式,而非传输协议。
一个 CMAF 呈现(presentation)可以包含多条代表不同码率、分辨率、音频选项或语言的轨道。兼容的轨道可以组成切换集(switching set),使播放器能够随网络条件变化切换不同表示形式。这实现了自适应码率流传输,而无需每种分发协议都使用一份不同的编码媒体副本。
CMAF 与 HTTP 分发广泛关联,因为相同的分段媒体可以被 HLS 播放列表和 MPEG-DASH 清单(manifests)同时引用。Apple 也记录了 CMAF 与 HLS 的配合方式。复用相同的媒体对象可以减少重复封装和存储,同时提高缓存效率。
在 CMSF 与 CMAF 的比较中,CMAF 提供了底层媒体结构。它本身并不定义 MOQ 订阅、轨道、组、对象、优先级或中继(relay)行为。
扩展阅读:什么是CMAF(通用媒体应用格式)?CMAF工作原理及优缺点
什么是 CMSF?
CMSF 全称 CMAF-Compliant MOQT Streaming Format(CMAF 兼容 MOQT 流传输格式)。IETF 的 CMSF 互联网草案(Internet-Draft)将其定义为 MOQT 流传输格式(MOQT Streaming Format)的一种扩展,用于通过 MOQ Transport 传输 CMAF 兼容和 LOC 兼容的媒体。作为互联网草案,CMSF 仍处于演进之中,在作为 RFC 正式发布前可能发生变更。
CMSF 不取代 CMAF,也不创造新的编解码器。它描述的是 CMAF 的头部、轨道、分片(fragments)、块(chunks)、切换集、加密信息和时间信息如何与 MOQ 流传输模型相对应。理解 CMSF 与 CMAF 最简单的方式是:CMAF 提供封装规则,CMSF 提供 MOQ 专属的映射。这种 CMSF 与 CMAF 的关系使两份规范在不同层上运作。
切换集中的每条 CMAF 轨道都作为独立的 MOQT 轨道承载。CMSF 要求这些轨道时间对齐,以便订阅者能在不同编码之间切换而不打断播放呈现。每个 MOQT 对象至少包含一个 CMAF 块,且组边界与 CMAF 分片边界对齐。
这种设计保留了 CMAF 工作流所熟悉的能力,同时使媒体可通过 MOQ 的订阅和中继模型获取。
CMSF 如何与 MOQ 配合使用?
MOQ 将媒体传输与媒体封装分离。MOQT 规范定义了一种发布-订阅式传输,其中媒体被组织为轨道、组和对象,并可通过中继(relays)转发。CMSF 告诉发布者和订阅者,CMAF 封装的媒体如何适配这些结构。
发布者首先暴露一个目录(catalog),描述可用的音频、视频或数据轨道。CMSF 目录条目可以标识编解码器、码率、尺寸、帧率、初始化数据、备选组(alternative groups)和内容保护信息。订阅者随后可以只请求自己需要的轨道,而不是接收所有可用的表示形式。
对于多码率视频呈现,每条 CMAF 表示形式都成为一条独立的 MOQT 轨道。匹配的备选组值表示这些轨道属于同一个切换集。时间对齐使播放器能够在不同码率之间切换,而 MOQ 负责对象交付和基于中继的分发。在 CMSF 与 CMAF 的这一部分中,CMSF 将 CMAF 的备选表示连接到 MOQT 订阅。
CMSF 将 CMAF 表示形式映射为独立的 MOQT 轨道,在对齐的 MOQT 对象和组中承载 CMAF 块,并允许订阅者请求自己需要的轨道。来源:IETF CMSF 互联网草案。
这种职责划分正是 CMSF vs CMAF 的核心:CMSF 本身并不会让 CMAF"更快"。它让 CMAF 媒体能够在支持选择性订阅、优先级和现代中继分发的 MOQ 架构中使用。
为什么 CMSF 很方便
CMSF 与 CMAF 关系中的主要优势在于复用。已经拥有 CMAF 感知的编码器、打包器、播放器和保护工作流的组织,无需抛弃现有模型就能尝试 MOQ 分发。CMSF 将成熟的媒体结构带入更新的传输环境。
成熟的 DRM 与内容保护
CMSF 通过 CMAF 媒体层的 ISO 通用加密支持内容保护。
| 名称 | 值 | 描述 |
|---|---|---|
| CENC | cenc | AES-CTR 全样本和子样本加密 |
| CBCS | cbcs | 基于 AES-CBC 模式的子样本加密 |
CMSF 支持的通用加密方案。当前草案建议使用 CBCS 以获得更广泛的硬件解码器兼容性。来源:IETF CMSF 互联网草案,表 3。
其目录可以信令通知商业DRM系统,包括 Widevine、PlayReady 和 FairPlay Streaming,同时加密样本仍与内容解密模块和安全播放管线兼容。受保护播放的底层浏览器模型通过 W3C 的 Encrypted Media Extensions(加密媒体扩展)实现标准化。
这对优质视频而言绝不仅仅是打勾项。体育、娱乐和授权节目可能需要硬件级解密、许可证获取、密钥轮换以及与成熟 DRM 服务的集成。CMSF 可以复用这些机制,而不是迫使应用仅在应用层构建保护。
在 CMSF 与 CMAF 的分析中,DRM 复用是最清晰的实际收益之一。
自适应码率流传输
CMAF 切换集已经为备选编码提供了结构化模型。CMSF 将这些表示形式映射到对齐的 MOQT 轨道,保留播放器选择合适的码率所需的信息。这使得 CMSF 在"网络容量变化"与"速度"同等重要时非常有用。在这里,CMSF 与 CMAF 意味着"传输映射"对"原始切换结构"。
直播与点播媒体
CMSF 草案同时面向直播和点播内容。因此,一种共享的流传输格式可以支持直播呈现、延迟播放和存储内容,而无需让每种模式都使用完全独立的封装系统。这种灵活性是理解"CMSF 与 CMAF 应视为扩展关系而非替代关系"的原因之一。
CMSF 与 CMAF 决策表
| 优先事项 | 最佳起点 | 原因 |
|---|---|---|
| 理解基础封装标准 | CMAF | CMAF 定义了 CMSF 所依托的分段媒体结构 |
| 通过 MOQ 分发 CMAF 媒体 | CMSF | CMSF 将 CMAF 轨道、块、切换集和保护数据映射到 MOQ |
| 复用商业 DRM 工作流 | CMSF | CMSF 支持通用加密和成熟的 DRM 信令 |
| 在 MOQ 上实现自适应码率播放 | CMSF | 对齐的 MOQT 轨道表示 CMAF 切换集备选方案 |
CMSF 与 CMAF 的本质关系很简单:CMAF 定义了可复用的分段媒体封装,CMSF 将该封装适配到 MOQ 流传输格式。CMSF 为在 MOQ 上实现自适应码率切换、成熟的 DRM 生态以及直播或点播分发提供了便捷路径。
常见问题
CMSF 和 CMAF 是一回事吗?
不是。CMAF 是标准化的媒体封装格式。CMSF 是 IETF 的一项进行中的工作,定义了 CMAF 封装的媒体如何在 MOQ 流传输格式中承载。因此,CMSF vs CMAF 的答案是"MOQ 映射对基础媒体封装",而不是两个可互换的标准。
CMSF 必须使用 MOQ 吗?
是的。CMSF 是专门设计为 MOQT 流传输格式的 CMAF 兼容实现。CMAF 本身不要求 MOQ,可以与其他分发系统(包括 HLS 和 MPEG-DASH)配合使用。
CMSF 支持 DRM 吗?
支持。当前草案支持使用 ISO 通用加密的 CMAF 内容保护,以及针对 Widevine、PlayReady 和 FairPlay Streaming 等 DRM 系统的目录信令。实际兼容性取决于所选的加密方案、设备、播放器、许可证服务和内容解密模块。




