FOURCCMap 类

[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayerIMFMediaEngine媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

fourccmap 类层次结构

FOURCCMap 类提供 GUID 媒体子类型和旧样式 FOURCC 32 位媒体标记之间的转换。 在原始 Windows 多媒体 API 中,媒体类型使用从四个 8 位字符创建的 32 位值进行标记,称为 FOURCC。 DirectShow 媒体类型具有子类型的 GUID,部分原因是创建 (创建新 FOURCC 需要将其注册到 Microsoft) 。 由于 FOURCC是唯一的,因此通过分配表示 FOURCC的 4,000 万 GUID的范围,可以实现一对一映射。 此范围是以下格式的所有 GUID

XXXXXXXX-0000-0010-8000-00AA00389B71

此类简化了 GUIDFOURCC之间的转换。 这仅用于兼容性。 建议所有新媒体子类型都由 Guidgen.exe 或类似工具创建的 GUID表示,而不是通过映射 FOURCC表示。

对象派生自 GUID,没有额外的数据成员,并且可以强制转换为 GUID。 可以在构造时向对象传递 FOURCC 。 默认构造函数会将 FOURCC 初始化为零。

GetFOURCCSetFOURCC 方法不检查 GUID 的固定部分对应于 FOURCC 范围。 因此,如果将指向 GUID 的指针强制转换为指向 FOURCC 的指针,然后设置或获取 FOURCC 字段,则还需要单独检查 GUIDFOURCC 范围内。

成员函数

Label
FOURCCMap 构造函数方法。
GetFOURCC FOURCCMap 对象检索 FOURCC
SetFOURCC 设置 FOURCCMap 对象的 FOURCC 部分。