VC-1
以微软 Windows Media Video 9 技术为基础、由 SMPTE 标准化的视频压缩格式,包含 Simple、Main 与 Advanced Profile,曾用于高清光盘、网络媒体和数字视频发行。
详细说明
VC-1 是由电影电视工程师协会标准化的视频压缩格式,正式规范为 SMPTE ST 421,早期编号写作 SMPTE 421M。其技术主要源自微软 Windows Media Video 9,完整标准于 2006 年发布,包含 Simple、Main 和 Advanced 三种配置文件。
VC-1 与 Windows Media Video 之间存在继承关系,但两个名称不能在所有场合互换。
Windows Media Video 是微软的一组编码器、解码器和产品格式名称,除与 VC-1 对应的 WMV9 系列外还包括其他技术;VC-1 则指 SMPTE 规定的码流语法和解码过程。一个扩展名为 .wmv 的文件不一定包含 VC-1,合规 VC-1 码流也可以封装在 ASF 以外的容器中。
VC-1 使用基于块的运动补偿与变换编码。编码器从同一画面或参考画面预测当前区域,对预测残差进行变换、量化和可变长度编码;解码端据此重建图像。标准以 8×8 区域为变换基础,并可按局部特征选择 8×8、8×4、4×8 或 4×4 变换。较小变换有利于保留复杂边缘,较大变换适合较平缓的残差,但实际选择会同时影响语法开销和压缩效率。
运动补偿支持不同大小的预测区域、半像素或四分之一像素精度、多个运动矢量和双向预测。强度补偿可调整参考画面的亮度关系,以处理淡入、闪光或整体光照变化;范围缩减则为部分低精度显示与处理环境提供受限信号范围。重叠变换、去块环路滤波和量化控制用于减轻块边界或分配不同区域的精度,这些工具是否可用取决于配置文件和码流设置。部分帧级和宏块级条件以位平面表示,例如哪些宏块采用跳过、直接预测或特定运动模式。位平面可以使用多种游程与块状编码方式,避免为每个宏块重复写入相同状态。VC-1 也规定对码流进行反转义和起始码识别的处理,使 Advanced Profile 能够在不依赖 ASF 的传输环境中定位序列、入口点、帧或场。
Simple Profile 面向较低复杂度的逐行视频,编码工具和允许参数最少;Main Profile 增加 B 图像等能力,覆盖更广的逐行应用。Advanced Profile 支持逐行帧、隔行帧与隔行场,加入更完整的序列级信号描述、入口点和传输独立语法,是高清光盘主要采用的分支。每种配置文件再配合级别限制分辨率、帧率、码率和解码缓冲,支持 VC-1 Advanced Profile 的设备仍可能因级别不足而无法处理某个码流。微软实现中,Simple 与 Main Profile 通常使用 FOURCC `WMV3` 标识,符合最终 Advanced Profile 的码流通常使用 `WVC1`。在 SMPTE 标准定稿前,微软曾以 `WMVA` 标识早期 Advanced Profile 实现;它与最终 WVC1 码流存在语法差异,旧文件可能需要相应的兼容解码器。FOURCC 是容器或接口识别编码格式的方法,并不等同于文件扩展名。
VC-1 本身不规定音频、字幕、菜单或文件系统。
在 ASF 中,它可以与 Windows Media Audio 等音频组合;在 Matroska 中可与其他轨道组合;在 Blu-ray 和 HD DVD 中,则由相应光盘应用格式把 VC-1 基本流复用进传输流结构,并另行管理播放列表、章节和交互内容。因此“WMV 文件”“VC-1 视频”和“VC-1 蓝光”描述的是不同层次。Blu-ray Disc 和 HD DVD 都把 VC-1 列入高清节目可使用的视频编码,并要求相应播放器具备规定范围内的解码能力。2000 年代中后期的许多电影与演唱会影碟采用 Advanced Profile,常见于 1080p24 或 1080i 节目。播放器必须支持 VC-1 不表示每张光盘都使用它,同一介质也可能采用 MPEG-2 Video 或 H.264 / AVC。
随着 H.264 在广播、网络与消费设备中扩大使用,后续 Ultra HD Blu-ray 又选择 HEVC,VC-1 在新发行中的采用逐渐减少。已有光盘、ASF 文件和媒体档案仍需要 VC-1 解码支持。编码名称同样不构成画质判断:母版、码率、预处理和编码器决策会使两个同为 VC-1 的节目呈现不同结果。