Windows Media Video 9 屏幕编码器
Windows Media Video 9 屏幕编码器经过优化,可对计算机监视器中的顺序屏幕截图进行编码。
类标识符
Windows Media Video 9 屏幕编码器 (CLSID) 的类标识符由常 量CLSID_CMSSCEncMediaObject2表示。 可以通过调用 CoCreateInstance 创建编码器的实例。
输入类型
当版本 9 屏幕编码器用作 DirectX 媒体对象 (DMO) 时,支持以下输入类型。
- MEDIASUBTYPE_RGB24
- MEDIASUBTYPE_RGB32
- MEDIASUBTYPE_ARGB32
- MEDIASUBTYPE_RGB565
- MEDIASUBTYPE_RGB555
- MEDIASUBTYPE_RGB8
将版本 9 屏幕编码器用作媒体基础转换 (MFT) 时,支持以下输入类型。
- MFVideoFormat_RGB24
- MFVideoFormat_RGB32
- MFVideoFormat_ARGB32
- MFVideoFormat_RGB565
- MFVideoFormat_RGB555
- MFVideoFormat_RGB8
输出类型
Windows Media 视频屏幕版本 9 编码内容 (FOURCC) 的四个字符代码为“MSS2”。
版本 9 屏幕编码器支持以下输出类型。
- MEDIASUBTYPE_MSS2
编码器属性
Windows Media Video 9 屏幕编码器支持以下属性。
属性 | 说明 |
---|---|
MFPKEY_ASFOVERHEADPERFRAME | 指定用于存储压缩内容的容器所需的开销(以字节为单位)。
只写。 |
MFPKEY_BAVG | 指定受约束的可变比特率 (VBR) 流的缓冲区窗口(以毫秒为单位),其平均比特率 (由 MFPKEY_RAVG) 指定。
读/写。 |
MFPKEY_BMAX | 指定受约束的可变比特率 (VBR) 流在其峰值比特率 (MFPKEY_RMAX) 指定的缓冲区窗口( 以 毫秒为单位)。
读/写。 |
MFPKEY_BUFFERFULLNESSINFIRSTBYTE | 指定编码的视频位流是否包含每个关键帧的缓冲区 fullness 值。
只读。 |
MFPKEY_CODEDFRAMES | 指定编解码器编码的视频帧数。
只读。 |
MFPKEY_CODEDNONZEROFRAMES | 指定实际包含数据的编解码器编码的视频帧数。
只读。 |
MFPKEY_COMPLEXITY | 此属性由 MFPKEY_COMPLEXITYEX 取代。 |
MFPKEY_COMPLEXITYEX | 指定编码器算法的复杂性。
只写。 |
MFPKEY_CRISP | 指定编解码器输出中运动平滑度与图像质量之间的权衡的数字表示形式。
只写。 |
MFPKEY_DROPPEDFRAMES | 指定编码期间丢弃的视频帧数。
只读。 |
MFPKEY_ENDOFPASS | 指定编码传递的结束。
只写。 |
MFPKEY_FOURCC | 指定用于标识要使用的编码器的 FOURCC。
只写。 |
MFPKEY_KEYDIST | 指定编解码器输出中关键帧之间的最长时间(以毫秒为单位)。
只写。 |
MFPKEY_LIVEENCODE | 已过时。 |
MFPKEY_PASSESRECOMMENDED | 指定编解码器支持的最大传递数。
只读。 |
MFPKEY_PASSESUSED | Windows XP 及更高版本。 读/写。 指定编解码器将用于对内容进行编码的传递数。
读/写。 |
MFPKEY_QPPERFRAME | 指定 QP。 可能的值为 1.0 到 31.0。
只写。 |
MFPKEY_RAVG | 指定用于 2 次传递可变比特率 (VBR) 编码的平均比特率(以位/秒为单位)。
读/写。 |
MFPKEY_RMAX | 指定用于受约束的 2 通可变比特率 (VBR) 编码的峰值比特率(以比特/秒为单位)。
读/写。 |
MFPKEY_TOTALFRAMES | 指定在编码过程中传递给编码器的视频帧数。
只读。 |
MFPKEY_VBRENABLED | 指定编解码器是否将使用可变比特率 (VBR) 编码。
读/写。 |
MFPKEY_VBRQUALITY | 指定基于质量 () 可变比特率 (VBR) 编码的实际质量级别。
只写。 |
MFPKEY_VIDEOWINDOW | 可放入模型缓冲区的内容量(以毫秒为单位)。
只写。 |
MFPKEY_ZEROBYTEFRAMES | 指定跳过的视频帧数,因为它们是以前的帧的副本。
只读。 |
备注
屏幕编码器对象公开 IMediaObject 接口,以便对象可用作 DirectX 媒体对象 (DMO) ,并公开 IMFTransform 接口,以便对象可用作媒体基础转换 (MFT) 。
屏幕编码器的行为方式为 DMO 或 MFT,具体取决于你获取的接口以及正在运行的 Windows 版本。 下表显示了屏幕编码器作为 DMO 或 MFT 的行为条件。
操作系统 | 编码器行为 |
---|---|
Windows XP | Windows Media Screen 编码器始终充当 DMO。 |
Windows Vista 和 Windows 7 | 默认情况下,Windows Media Screen 编码器的行为与 DMO 相同。 如果在屏幕编码器上获取 IMFTransform 接口,则它的行为与 MFT 相同。 |
要求
要求 | 值 |
---|---|
客户端 |
Windows XP、Windows Vista 或 Windows 7 |
标头 |
|
DLL |
|
另请参阅